@@ -0,0 +1,95 @@
1+module Idris.Info.Show where
2+
3+import System.Exit
4+
5+import Idris.Info
6+
7+showIdrisFlagsLibs :: IO ()
8+showIdrisFlagsLibs = do
9+ libFlags <- getIdrisFlagsLib
10+ putStrLn $ unwords libFlags
11+
12+showExitIdrisFlagsLibs :: IO ()
13+showExitIdrisFlagsLibs = do
14+ showIdrisFlagsLibs
15+ exitSuccess
16+
17+showIdrisLibDir :: IO ()
18+showIdrisLibDir = do
19+ ldir <- getIdrisLibDir
20+ putStrLn ldir
21+
22+showExitIdrisLibDir :: IO ()
23+showExitIdrisLibDir = do
24+ showIdrisLibDir
25+ exitSuccess
26+
27+showIdrisFlagsInc :: IO ()
28+showIdrisFlagsInc = do
29+ incFlags <- getIdrisFlagsInc
30+ putStrLn $ unwords incFlags
31+
32+showExitIdrisFlagsInc :: IO ()
33+showExitIdrisFlagsInc = do
34+ showIdrisFlagsInc
35+ exitSuccess
36+
37+-- | List idris packages installed
38+showIdrisInstalledPackages :: IO ()
39+showIdrisInstalledPackages = do
40+ ipkgs <- getIdrisInstalledPackages
41+ mapM_ putStrLn ipkgs
42+
43+showExitIdrisInstalledPackages :: IO ()
44+showExitIdrisInstalledPackages = do
45+ showIdrisInstalledPackages
46+ exitSuccess
47+
48+showIdrisLoggingCategories :: IO ()
49+showIdrisLoggingCategories = do
50+ cs <- getIdrisLoggingCategories
51+ mapM_ putStrLn cs
52+
53+showExitIdrisLoggingCategories :: IO ()
54+showExitIdrisLoggingCategories = do
55+ showIdrisLoggingCategories
56+ exitSuccess
57+
58+showIdrisInfo :: IO ()
59+showIdrisInfo = do
60+ putStrLn $ unwords ["Idris", getIdrisVersion]
61+
62+ ps <- getIdrisInstalledPackages
63+ putStrLn $ unwords (["Installed Packages:"] ++ ps)
64+
65+ cs <- getIdrisLoggingCategories
66+ putStrLn $ unwords (["Logging Categories:"] ++ cs)
67+
68+ putStrLn "Paths:"
69+ ldir <- getIdrisLibDir
70+ udir <- getIdrisUserDataDir
71+ putStrLn $ unwords ["-", "Library Dir:", ldir]
72+ putStrLn $ unwords ["-", "User Dir:", udir]
73+
74+ putStrLn "Flags:"
75+ lflag <- getIdrisFlagsLib
76+ iflag <- getIdrisFlagsInc
77+ eflag <- getIdrisFlagsEnv
78+ putStrLn $ unwords (["-", "Libraries:", show lflag])
79+ putStrLn $ unwords (["-", "Includes:", show iflag])
80+ putStrLn $ unwords (["-", "Env:", show eflag])
81+
82+ cc <- getIdrisCC
83+ putStrLn $ unwords ["CC:", cc]
84+
85+ putStrLn "Files:"
86+ hfile <- getIdrisHistoryFile
87+ iscript <- getIdrisInitScript
88+ putStrLn $ unwords (["-", "History File:", hfile])
89+ putStrLn $ unwords (["-", "REPL Init Script", iscript])
90+
91+
92+showExitIdrisInfo :: IO ()
93+showExitIdrisInfo = do
94+ showIdrisInfo
95+ exitSuccess