grmlzshrc.t2t: Some aliases to ls(1).
[grml-etc-core.git] / doc / grmlzshrc.t2t
index 953bde7..4b8e0e2 100644 (file)
@@ -243,6 +243,18 @@ user's life.
 Converts plaintext files to HTML using vim. The output is written to
 <filename>.html.
 
+: **audioburn()**
+Burns the files in ~/ripps (see audiorip() below) to an audio CD.
+Then prompts the user if she wants to remove that directory. You might need
+to tell audioburn which cdrom device to use like:
+"DEVICE=/dev/cdrom audioburn"
+
+: **audiorip()**
+Creates directory ~/ripps, if it does not exist. Then rips audio CD into
+it. Then prompts the user if she wants to burn a audio CD with audioburn()
+(see above). You might need to tell audiorip which cdrom device to use like:
+"DEVICE=/dev/cdrom audioburn"
+
 : **cl()**
 Changes current directory to the one supplied by argument and lists the files
 in it, including file names starting with ".".
@@ -251,6 +263,19 @@ in it, including file names starting with ".".
 Takes packagename as argument. Sets current working directory to
 /usr/share/doc/<packagename> and prints out a directory listing.
 
+: **fluxkey-change()**
+Switches the key combinations for changing current workspace under fluxbox(1)
+from Alt-[0-9] to Alt-F[0-9] and vice versa by rewriting $HOME/.fluxbox/keys.
+Requires the window manager to reread configuration to take effect.
+
+: **genthumbs()**
+A simple thumbnails generator. Resizes images (i. e. files that end in ".jpg",
+".jpeg", ".gif" or ".png") to 100x200. Output files are named "thumb-<original
+filename>". Creates an index.html with title "Images" showing the
+thumbnails as clickable links to the respective original file.
+//Warning:// On start genthumbs() silently removes a possibly existing "index.html"
+and all files and/or directories beginning with "thumb-" in current directory!
+
 : **greph()**
 Searches the zsh command history for a regular expression.
 
@@ -291,6 +316,10 @@ Returns true, if run on grml-small, else false.
 : **isutfenv()**
 Returns true, if run within an utf environment, else false.
 
+: **lcheck()**
+Lists libraries that define the symbol containing the string given as
+parameter.
+
 : **limg()**
 Lists images (i. e. files ending with ".jpg", ".gif" or ".png") in current
 directory.
@@ -299,13 +328,33 @@ directory.
 Creates directory including parent directories, if necessary. Then changes
 current working directory to it.
 
+: **mkiso()**
+Creates an iso9660 filesystem image with Rockridge and Joliet extensions
+enabled using mkisofs(8). Prompts the user for volume name, filename and
+target directory.
+
+: **purge()**
+Removes typical temporary files (i. e. files like "*~", ".*~", "#*#", "*.o",
+"a.out", "*.core", "*.cmo", "*.cmi" and ".*.swp") from current directory.
+Asks for confirmation.
+
 : **readme()**
 Opens all README-like files in current working directory with the program
 defined in the $PAGER environment variable.
 
+: **regcheck()**
+Checks whether a regular expression (first parameter) matches a string
+(second parameter) using perl.
+
 : **shtar()**
 Lists the content of a gzipped tar archive in default pager.
 
+: **shzip()**
+Shows the content of a zip archive in default pager.
+
+: **slow_print()**
+Prints the arguments slowly by sleeping 0.08 seconds between each character.
+
 : **sshot()**
 Creates directory named shots in user's home directory, if it does not yet
 exist and changes current working directory to it. Then sleeps 5 seconds,
@@ -318,6 +367,14 @@ Initializes an X session using startx(1) if /etc/X11/xorg.conf exists, else
 issues a Warning to use the grml-x(1) script. Can be overridden by using
 /usr/bin/startx directly.
 
+: **status()**
+Shows some information about current system status.
+
+: **udiff()**
+Makes a unified diff of the command line arguments trying hard to find a
+smaller set of changes. Descends recursively into subdirectories. Ignores
+hows some information about current status.
+
 : **urlencode()**
 Takes a string as its first argument and prints it RFC 2396 URL encoded to
 standard out.
@@ -347,6 +404,10 @@ while watching a movie.
 Prints the summarized disk usage of the arguments as well as a grand total
 in human readable format.
 
+: **dir** (//ls -lSrah//)
+Lists files (including dot files) sorted by size (biggest last) in long and
+human readable output format.
+
 : **fblinks** (//links2 -driver fb//)
 A Web browser on the framebuffer device. So you can browse images and click
 links on the virtual tty.
@@ -368,6 +429,18 @@ Case insensitive grep with colored output.
 Basic HTTP server implemented in python. Listens on port 8000/tcp and
 serves current directory. Implements GET and HEAD methods.
 
+: **insecscp** (//scp -o "StrictHostKeyChecking=no" -o "UserKnownHostsFile=/dev/null"//)
+scp with possible man-in-the-middle attack enabled. This is convenient, if the targets
+host key changes frequently, for example on virtualized test- or development-systems.
+To be used only inside trusted networks, of course.
+
+: **insecssh** (//ssh -o "StrictHostKeyChecking=no" -o "UserKnownHostsFile=/dev/null"//)
+ssh with possible man-in-the-middle attack enabled
+(for an explanation see insecscp above).
+
+: **j** (//jobs -l//)
+Prints status of jobs in the current shell session in long format.
+
 : **l** (//ls -lF --color=auto//)
 Lists files in long output format with indicator for filetype appended
 to filename. If the terminal supports it, with colored output.
@@ -376,6 +449,9 @@ to filename. If the terminal supports it, with colored output.
 Lists files in long colored output format. Including file names
 starting with ".".
 
+: **lad** (//ls -d .*(/)//)
+Lists the dot directories (not their contents) in current directory.
+
 : **lh** (//ls -hAl --color=auto//)
 Lists files in long and human readable output format in nice colors,
 if available. Includes file names starting with "." except "." and
@@ -384,15 +460,15 @@ if available. Includes file names starting with "." except "." and
 : **ll** (//ls -l --color=auto//)
 Lists files in long colored output format.
 
-: **j** (//jobs -l//)
-Prints status of jobs in the current shell session in long format.
-
 : **ls** (//ls -b -CF --color=auto//)
 Lists directory printing octal escapes for nongraphic characters.
 Entries are listed by columns and an indicator for file type is appended
 to each file name. Additionally the output is colored, if the terminal
 supports it.
 
+: **lsa** (//ls -a .*(.)//)
+Lists dot files in current working directory.
+
 : **lsbig** (//ls -flh *(.OL[1,10])//)
 Displays the ten biggest files (long and human readable output format).
 
@@ -402,12 +478,19 @@ Shows directories.
 : **lse** (//ls -d *(/^F)//)
 Shows empty directories.
 
+: **lsl** (//ls -l *(@)//)
+Lists symbolic links in current directory.
+
 : **lsnew** (//ls -rl *(D.om[1,10])//)
 Displays the ten newest files (long output format).
 
 : **lsold** (//ls -rtlh *(D.om[1,10])//)
 Displays the ten oldest files (long output format).
 
+: **lss** (//ls -l *(s,S,t)//)
+Lists files in current directory that have the setuid, setgid or sticky bit
+set.
+
 : **lssmall** (//ls -Srl *(.oL[1,10])//)
 Displays the ten smallest files (long output format).
 
@@ -486,6 +569,111 @@ your **$fpath**), you can browse and download them at:
 
 http://git.grml.org/?p=grml-etc-core.git;a=tree;f=usr_share_grml/zsh;hb=HEAD
 
+= ZSH REFCARD TAGS =
+If you read //grmlzshrc//'s code you may notice strange looking comments in
+it. These are there for a purpose. grml's zsh-refcard is automatically
+generated from the contents of the actual configuration file. However, we need
+a little extra information on which comments and what lines of code to take
+into account (and for what purpose).
+
+Here is what they mean:
+
+List of tags (comment types) used:
+: **#a#**
+Next line contains an important alias, that should be included in the
+grml-zsh-refcard. (placement tag: @@INSERT-aliases@@)
+
+: **#f#**
+Next line contains the beginning of an important function. (placement
+tag: @@INSERT-functions@@)
+
+: **#v#**
+Next line contains an important variable. (placement tag:
+@@INSERT-variables@@)
+
+: **#k#**
+Next line contains an important keybinding. (placement tag:
+@@INSERT-keybindings@@)
+
+: **#d#**
+Hashed directories list generation: //start//: denotes the start of a list of
+'hash -d' definitions. //end//: denotes its end. (placement tag:
+@@INSERT-hasheddirs@@)
+
+: **#A#**
+Abbreviation expansion list generation: //start//: denotes the beginning of
+abbreviations. //end//: denotes their end.
+\
+Lines within this section that end in '#d .*' provide extra documentation to
+be included in the refcard. (placement tag: @@INSERT-abbrev@@)
+
+: **#m#**
+This tag allows you to manually generate refcard entries for code lines that
+are hard/impossible to parse.
+Example:
+\
+```
+#m# k ESC-h Call the run-help function
+```
+\
+That would add a refcard entry in the keybindings table for 'ESC-h' with the
+given comment.
+\
+So the syntax is: #m# <section> <argument> <comment>
+
+: **#o#**
+This tag lets you insert entries to the 'other' hash. Generally, this should
+not be used. It is there for things that cannot be done easily in another way.
+(placement tag: @@INSERT-other-foobar@@)
+
+
+All of these tags (except for m and o) take two arguments, the first
+within the tag, the other after the tag:
+
+#<tag><section># <comment>
+
+Where <section> is really just a number, which are defined by the @secmap
+array on top of 'genrefcard.pl'. The reason for numbers instead of names is,
+that for the reader, the tag should not differ much from a regular comment.
+For zsh, it is a regular comment indeed. The numbers have got the following
+meanings:
+
+: **0**
+//default//
+
+: **1**
+//system//
+
+: **2**
+//user//
+
+: **3**
+//debian//
+
+: **4**
+//search//
+
+: **5**
+//shortcuts//
+
+: **6**
+//services//
+
+
+So, the following will add an entry to the 'functions' table in the 'system'
+section, with a (hopefully) descriptive comment:
+\
+```
+#f1# Edit an alias via zle
+edalias() {
+```
+\
+It will then show up in the @@INSERT-aliases-system@@ replacement tag that can
+be found in 'grml-zsh-refcard.tex.in'. If the section number is omitted, the
+'default' section is assumed. Furthermore, in 'grml-zsh-refcard.tex.in'
+@@INSERT-aliases@@ is exactly the same as @@INSERT-aliases-default@@. If you
+want a list of **all** aliases, for example, use @@INSERT-aliases-all@@.
+
 
 = CONTRIBUTING =
 If you want to help to improve grml's zsh setup, clone the grml-etc-core