mirror of
https://github.com/simonmichael/hledger.git
synced 2024-12-26 20:02:27 +03:00
change paths in code, scripts, readme
This commit is contained in:
parent
d637e2fbcd
commit
b425e50ad1
8
Makefile
8
Makefile
@ -150,10 +150,10 @@ CABALFILES:= \
|
|||||||
|
|
||||||
MANUALSOURCEFILES:= \
|
MANUALSOURCEFILES:= \
|
||||||
doc/lib.m4 \
|
doc/lib.m4 \
|
||||||
*/*/*.m4.md \
|
*/*.m4.md \
|
||||||
|
|
||||||
MANUALGENFILES:= \
|
MANUALGENFILES:= \
|
||||||
hledger*/doc/hledger*.[15]{,.info,.txt} \
|
hledger*/hledger*.{1,5,info,txt} \
|
||||||
|
|
||||||
# site/*.md includes website source files and generated web manual files
|
# site/*.md includes website source files and generated web manual files
|
||||||
# WEBDOCFILES:= \
|
# WEBDOCFILES:= \
|
||||||
@ -1399,8 +1399,8 @@ genmanuals: Shake #$(call def-help,genmanuals, regenerate embedded manuals (migh
|
|||||||
./Shake manuals
|
./Shake manuals
|
||||||
|
|
||||||
updatemanuals: genmanuals $(call def-help,updatemanuals, regenerate embedded manuals and commit (might need -B) )
|
updatemanuals: genmanuals $(call def-help,updatemanuals, regenerate embedded manuals and commit (might need -B) )
|
||||||
@read -p "please review changes then press enter to commit: $(shell ls hledger*/doc/*.[15]*)"
|
@read -p "please review changes then press enter to commit: $(shell ls hledger*/hledger*.{1,5,info,txt})"
|
||||||
git commit -m "update embedded manuals" hledger*/doc/*.[15]*
|
git commit -m "update embedded manuals" hledger*/hledger*.{1,5,info,txt}
|
||||||
|
|
||||||
|
|
||||||
tagrelease: \
|
tagrelease: \
|
||||||
|
58
Shake.hs
58
Shake.hs
@ -112,17 +112,33 @@ main = do
|
|||||||
,"hledger_timeclock.5"
|
,"hledger_timeclock.5"
|
||||||
,"hledger_timedot.5"
|
,"hledger_timedot.5"
|
||||||
]
|
]
|
||||||
-- manuals m4 source, may include other files (hledger/doc/hledger.1.m4.md)
|
|
||||||
m4manpages = [manpageDir m </> m <.> "m4.md" | m <- manpageNames]
|
|
||||||
|
|
||||||
-- manuals rendered to nroff, ready for man (hledger/doc/hledger.1)
|
manualNames = map manpageNameToManualName manpageNames
|
||||||
|
|
||||||
|
-- hledger.1 -> hledger, hledger_journal.5 -> hledger_journal
|
||||||
|
manpageNameToManualName = dropNumericSuffix
|
||||||
|
where
|
||||||
|
dropNumericSuffix s = reverse $
|
||||||
|
case reverse s of
|
||||||
|
c : '.' : cs | isDigit c -> cs
|
||||||
|
cs -> cs
|
||||||
|
|
||||||
|
-- hledger -> hledger.1, hledger_journal -> hledger_journal.5
|
||||||
|
manualNameToManpageName s
|
||||||
|
| '_' `elem` s = s <.> "5"
|
||||||
|
| otherwise = s <.> "1"
|
||||||
|
|
||||||
|
-- manuals m4 source; may include other source files (hledger/hledger.m4.md)
|
||||||
|
m4manpages = [manualDir m </> m <.> "m4.md" | m <- manualNames]
|
||||||
|
|
||||||
|
-- manuals rendered to nroff, ready for man (hledger/hledger.1)
|
||||||
nroffmanpages = [manpageDir m </> m | m <- manpageNames]
|
nroffmanpages = [manpageDir m </> m | m <- manpageNames]
|
||||||
|
|
||||||
-- manuals rendered to text, ready for embedding (hledger/doc/hledger.1.txt)
|
-- manuals rendered to text, ready for embedding (hledger/hledger.txt)
|
||||||
txtmanpages = [manpageDir m </> m <.> "txt" | m <- manpageNames]
|
txtmanpages = [manualDir m </> m <.> "txt" | m <- manualNames]
|
||||||
|
|
||||||
-- manuals rendered to info, ready for info (hledger/doc/hledger.1.info)
|
-- manuals rendered to info, ready for info (hledger/hledger.info)
|
||||||
infomanpages = [manpageDir m </> m <.> "info" | m <- manpageNames]
|
infomanpages = [manualDir m </> m <.> "info" | m <- manualNames]
|
||||||
|
|
||||||
-- manuals rendered to markdown, ready for web output by hakyll (site/hledger.md)
|
-- manuals rendered to markdown, ready for web output by hakyll (site/hledger.md)
|
||||||
webmanpages = ["site" </> manpageNameToUri m <.>"md" | m <- manpageNames]
|
webmanpages = ["site" </> manpageNameToUri m <.>"md" | m <- manpageNames]
|
||||||
@ -154,8 +170,13 @@ main = do
|
|||||||
|
|
||||||
-- hledger.1 -> hledger/doc, hledger_journal.5 -> hledger-lib/doc
|
-- hledger.1 -> hledger/doc, hledger_journal.5 -> hledger-lib/doc
|
||||||
manpageDir m
|
manpageDir m
|
||||||
| '_' `elem` m = "hledger-lib" </> "doc"
|
| '_' `elem` m = "hledger-lib"
|
||||||
| otherwise = dropExtension m </> "doc"
|
| otherwise = dropExtension m
|
||||||
|
|
||||||
|
-- hledger -> hledger, hledger_journal -> hledger-lib
|
||||||
|
manualDir m
|
||||||
|
| '_' `elem` m = "hledger-lib"
|
||||||
|
| otherwise = m
|
||||||
|
|
||||||
-- hledger.1 -> hledger, hledger_journal.5 -> journal
|
-- hledger.1 -> hledger, hledger_journal.5 -> journal
|
||||||
manpageNameToUri m | "hledger_" `isPrefixOf` m = dropExtension $ drop 8 m
|
manpageNameToUri m | "hledger_" `isPrefixOf` m = dropExtension $ drop 8 m
|
||||||
@ -183,8 +204,8 @@ main = do
|
|||||||
-- use m4 and pandoc to process macros, filter content, and convert to nroff suitable for man output
|
-- use m4 and pandoc to process macros, filter content, and convert to nroff suitable for man output
|
||||||
phony "manpages" $ need nroffmanpages
|
phony "manpages" $ need nroffmanpages
|
||||||
|
|
||||||
nroffmanpages |%> \out -> do -- hledger/doc/hledger.1
|
nroffmanpages |%> \out -> do -- hledger/hledger.1
|
||||||
let src = out <.> "m4.md"
|
let src = manpageNameToManualName out <.> "m4.md"
|
||||||
lib = "doc/lib.m4"
|
lib = "doc/lib.m4"
|
||||||
dir = takeDirectory out
|
dir = takeDirectory out
|
||||||
tmpl = "doc/manpage.nroff"
|
tmpl = "doc/manpage.nroff"
|
||||||
@ -204,15 +225,15 @@ main = do
|
|||||||
-- render man page nroffs to fixed-width text for embedding in executables, with nroff
|
-- render man page nroffs to fixed-width text for embedding in executables, with nroff
|
||||||
phony "txtmanpages" $ need txtmanpages
|
phony "txtmanpages" $ need txtmanpages
|
||||||
|
|
||||||
txtmanpages |%> \out -> do -- hledger/doc/hledger.1.txt
|
txtmanpages |%> \out -> do -- hledger/hledger.txt
|
||||||
let src = dropExtension out
|
let src = dropExtension out <.> "m4.md"
|
||||||
need [src]
|
need [src]
|
||||||
cmd Shell groff "-t -e -mandoc -Tascii" src "| col -bx >" out -- http://www.tldp.org/HOWTO/Man-Page/q10.html
|
cmd Shell groff "-t -e -mandoc -Tascii" src "| col -bx >" out -- http://www.tldp.org/HOWTO/Man-Page/q10.html
|
||||||
|
|
||||||
-- use m4 and pandoc to process macros, filter content, and convert to info, suitable for info viewing
|
-- use m4 and pandoc to process macros, filter content, and convert to info, suitable for info viewing
|
||||||
phony "infomanpages" $ need infomanpages
|
phony "infomanpages" $ need infomanpages
|
||||||
|
|
||||||
infomanpages |%> \out -> do -- hledger/doc/hledger.1.info
|
infomanpages |%> \out -> do -- hledger/hledger.info
|
||||||
let src = out -<.> "m4.md"
|
let src = out -<.> "m4.md"
|
||||||
lib = "doc/lib.m4"
|
lib = "doc/lib.m4"
|
||||||
dir = takeDirectory out
|
dir = takeDirectory out
|
||||||
@ -249,11 +270,12 @@ main = do
|
|||||||
phony "webmanpages" $ need webmanpages
|
phony "webmanpages" $ need webmanpages
|
||||||
|
|
||||||
webmanpages |%> \out -> do -- site/hledger.md
|
webmanpages |%> \out -> do -- site/hledger.md
|
||||||
let m = manpageUriToName $ dropExtension $ takeFileName out -- hledger.1
|
let manpage = manpageUriToName $ dropExtension $ takeFileName out -- hledger
|
||||||
dir = manpageDir m
|
manual = manpageNameToManualName manpage
|
||||||
src = dir </> m <.> "m4.md"
|
dir = manpageDir manpage
|
||||||
|
src = dir </> manual <.> "m4.md"
|
||||||
lib = "doc/lib.m4"
|
lib = "doc/lib.m4"
|
||||||
heading = let h = dropExtension m
|
heading = let h = manual
|
||||||
in if "hledger_" `isPrefixOf` h
|
in if "hledger_" `isPrefixOf` h
|
||||||
then drop 8 h ++ " format"
|
then drop 8 h ++ " format"
|
||||||
else h
|
else h
|
||||||
|
@ -24,7 +24,7 @@ These are in the respective package directories:
|
|||||||
hledger*/package.yaml source for package metadata (description, etc.)
|
hledger*/package.yaml source for package metadata (description, etc.)
|
||||||
hledger*/README package readme, displayed on hackage
|
hledger*/README package readme, displayed on hackage
|
||||||
hledger*/CHANGES package changelog, displayed on hackage
|
hledger*/CHANGES package changelog, displayed on hackage
|
||||||
hledger*/doc/hledger*.m4.md package manual source file(s)
|
hledger*/hledger*.m4.md package manual source file(s)
|
||||||
|
|
||||||
4. The project website and additional docs - home page, FAQ, tutorials,
|
4. The project website and additional docs - home page, FAQ, tutorials,
|
||||||
how-tos, developer guide, etc. These are in the site directory:
|
how-tos, developer guide, etc. These are in the site directory:
|
||||||
|
@ -35,44 +35,44 @@ type Topic = String
|
|||||||
docFiles :: IsString a => [(Topic, (a, a, a))]
|
docFiles :: IsString a => [(Topic, (a, a, a))]
|
||||||
docFiles = [
|
docFiles = [
|
||||||
("hledger",
|
("hledger",
|
||||||
($(makeRelativeToProject "doc/hledger.1" >>= embedStringFile)
|
($(makeRelativeToProject "hledger.1" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/hledger.1.txt" >>= embedStringFile)
|
,$(makeRelativeToProject "hledger.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/hledger.1.info" >>= embedStringFile)
|
,$(makeRelativeToProject "hledger.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
,("hledger-ui",
|
,("hledger-ui",
|
||||||
($(makeRelativeToProject "doc/other/hledger-ui.1" >>= embedStringFile)
|
($(makeRelativeToProject ".otherdocs/hledger-ui.1" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger-ui.1.txt" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger-ui.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger-ui.1.info" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger-ui.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
,("hledger-web",
|
,("hledger-web",
|
||||||
($(makeRelativeToProject "doc/other/hledger-web.1" >>= embedStringFile)
|
($(makeRelativeToProject ".otherdocs/hledger-web.1" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger-web.1.txt" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger-web.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger-web.1.info" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger-web.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
,("hledger-api",
|
,("hledger-api",
|
||||||
($(makeRelativeToProject "doc/other/hledger-api.1" >>= embedStringFile)
|
($(makeRelativeToProject ".otherdocs/hledger-api.1" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger-api.1.txt" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger-api.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger-api.1.info" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger-api.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
,("journal",
|
,("journal",
|
||||||
($(makeRelativeToProject "doc/other/hledger_journal.5" >>= embedStringFile)
|
($(makeRelativeToProject ".otherdocs/hledger_journal.5" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_journal.5.txt" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_journal.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_journal.5.info" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_journal.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
,("csv",
|
,("csv",
|
||||||
($(makeRelativeToProject "doc/other/hledger_csv.5" >>= embedStringFile)
|
($(makeRelativeToProject ".otherdocs/hledger_csv.5" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_csv.5.txt" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_csv.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_csv.5.info" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_csv.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
,("timeclock",
|
,("timeclock",
|
||||||
($(makeRelativeToProject "doc/other/hledger_timeclock.5" >>= embedStringFile)
|
($(makeRelativeToProject ".otherdocs/hledger_timeclock.5" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_timeclock.5.txt" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_timeclock.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_timeclock.5.info" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_timeclock.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
,("timedot",
|
,("timedot",
|
||||||
($(makeRelativeToProject "doc/other/hledger_timedot.5" >>= embedStringFile)
|
($(makeRelativeToProject ".otherdocs/hledger_timedot.5" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_timedot.5.txt" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_timedot.txt" >>= embedStringFile)
|
||||||
,$(makeRelativeToProject "doc/other/hledger_timedot.5.info" >>= embedStringFile)
|
,$(makeRelativeToProject ".otherdocs/hledger_timedot.info" >>= embedStringFile)
|
||||||
))
|
))
|
||||||
]
|
]
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user