Nano editor profile

From ScarletDME
Jump to navigation Jump to search

Here's how I call nano

EXECUTE '!nano -FHLOSWcdiklmptwxT' : TAB_WDTH : ' -Y pick ' : THE_PATH : '/' : THE_FILE


/etc/nanorc

## Sample initialization file for GNU nano.
##
## Please note that you must have configured nano with --enable-nanorc
## for this file to be read!  Also note that this file should not be in
## DOS or Mac format, and that characters specially interpreted by the
## shell should not be escaped here.
##
## To make sure a value is disabled, use "unset <option>".
##
## For the options that take parameters, the default value is given.
## Other options are unset by default.
##
## Quotes inside string parameters don't have to be escaped with
## backslashes.  The last double quote in the string will be treated as
## its end.  For example, for the "brackets" option, ""')>]}" will match
## ", ', ), >, ], and }.

## Marcus: I've tried to modify the key-mapping to be as 'normal' as
## possible, but compromises were required.  For example, Esc will
## exit search and replace, but F4 exits nano, not Ctl+F4.  My other
## choices may not suite you, but they are easily altered below.

## Use auto-indentation.
set autoindent

## Backup files to filename~.
# set backup

## The directory to put unique backup files in.
# set backupdir ""

## Do backwards searches by default.
# set backwards

## Use bold text instead of reverse video text.
# set boldtext

## The characters treated as closing brackets when justifying
## paragraphs.  They cannot contain blank characters.  Only closing
## punctuation, optionally followed by closing brackets, can end
## sentences.
##
# set brackets ""')>]}"

## Do case sensitive searches by default.
# set casesensitive

## Constantly display the cursor position in the statusbar.  Note that
## this overrides "quickblank".
set const

## Use cut to end of line by default.
set cut

## Set the line length for wrapping text and justifying paragraphs.
## If fill is 0 or less, the line length will be the screen width less
## this number.
##
# set fill -8

## Enable ~/.nano_history for saving and reading search/replace strings.
set historylog

## The opening and closing brackets that can be found by bracket
## searches.  They cannot contain blank characters.  The former set must
## come before the latter set, and both must be in the same order.
##
# set matchbrackets "(<[{)>]}"

## Use the blank line below the titlebar as extra editing space.
set morespace

## Enable mouse support, if available for your system.  When enabled,
## mouse clicks can be used to place the cursor, set the mark (with a
## double click), and execute shortcuts.  The mouse will work in the X
## Window System, and on the console when gpm is running.
##
set mouse

## Allow multiple file buffers (inserting a file will put it into a
## separate buffer).  You must have configured with --enable-multibuffer
## for this to work.
##
set multibuffer

## Don't convert files from DOS/Mac format.
set noconvert

## Don't follow symlinks when writing files.
set nofollow

## Don't display the helpful shortcut lists at the bottom of the screen.
set nohelp

## Don't add newlines to the ends of files.
set nonewlines

## Don't wrap text at all.
set nowrap

## Set operating directory.  nano will not read or write files outside
## this directory and its subdirectories.  Also, the current directory
## is changed to here, so any files are inserted from this dir.  A blank
## string means the operating directory feature is turned off.
##
# set operatingdir ""

## Preserve the XON and XOFF keys (^Q and ^S).
set preserve

## The characters treated as closing punctuation when justifying
## paragraphs.  They cannot contain blank characters.  Only closing
## punctuation, optionally followed by closing brackets, can end
## sentences.
##
# set punct "!.?"

## Do quick statusbar blanking.  Statusbar messages will disappear after
## 1 keystroke instead of 26.  Note that "const" overrides this.
##
# set quickblank

## The email-quote string, used to justify email-quoted paragraphs.
## This is an extended regular expression if your system supports them,
## otherwise a literal string.  Default:
# set quotestr "^([ ]*[#:>\|}])+"
## if you have extended regular expression support, otherwise:
# set quotestr "> "

## Fix Backspace/Delete confusion problem.
# set rebinddelete

## Fix numeric keypad key confusion problem.
# set rebindkeypad

## Do extended regular expression searches by default.
set regexp

## Make the Home key smarter.  When Home is pressed anywhere but at the
## very beginning of non-whitespace characters on a line, the cursor
## will jump to that beginning (either forwards or backwards).  If the
## cursor is already at that position, it will jump to the true
## beginning of the line.
# set smarthome

## Use smooth scrolling as the default.
set smooth

## Use this spelling checker instead of the internal one.  This option
## does not properly have a default value.
##
# set speller "aspell -x -c"

## Allow nano to be suspended.
set suspend

## Use this tab size instead of the default; it must be greater than 0.
set tabsize 3

## Convert typed tabs to spaces.
set tabstospaces

## Save automatically on exit, don't prompt.
set tempfile

## Disallow file modification.  Why would you want this in an rcfile?
# set view

## The two single-column characters used to display the first characters
## of tabs and spaces.  187 in ISO 8859-1 (0000BB in Unicode) and 183 in
## ISO-8859-1 (0000B7 in Unicode) seem to be good values for these.
# set whitespace "  "

## Detect word boundaries more accurately by treating punctuation
## characters as parts of words.
set wordbounds

## Enable the new (EXPERIMENTAL) generic undo code, not just for line
cuts
set undo

## Enable soft line wrapping (AKA full line display)
# set softwrap


## Color setup
##
## Format:
##
## syntax "short description" ["filename regex" ...]
##
## The "none" syntax is reserved; specifying it on the command line is
## the same as not having a syntax at all.  The "default" syntax is
## special: it takes no filename regexes, and applies to files that
## don't match any other syntax's filename regexes.
##
## color foreground,background "regex" ["regex"...]
## or
## icolor foreground,background "regex" ["regex"...]
##
## "color" will do case sensitive matches, while "icolor" will do case
## insensitive matches.
##
## Valid colors: white, black, red, blue, green, yellow, magenta, cyan.
## For foreground colors, you may use the prefix "bright" to get a
## stronger highlight.
##
## To use multi-line regexes, use the start="regex" end="regex"
## [start="regex" end="regex"...] format.
##
## If your system supports transparency, not specifying a background
## color will use a transparent color.  If you don't want this, be sure
## to set the background color to black or white.
##
## If you wish, you may put your syntaxes in separate files.  You can
## make use of such files (which can only include "syntax", "color", and
## "icolor" commands) as follows:
##
## include "/path/to/syntax_file.nanorc"
##
## Unless otherwise noted, the name of the syntax file (without the
## ".nanorc" extension) should be the same as the "short description"
## name inside that file.  These names are kept fairly short to make
## them easier to remember and faster to type using nano's -Y option.
##
## All regexes should be extended regular expressions.

## Key bindings
## Please see nanorc(5) for more details on this
##
## Here are some samples to get you going
##
# bind M-W nowrap main
# bind M-A casesens search
# bind ^S research main

# Any keys defined in 'all' menus can be superceded in specific menus.

bind ^C  cancel      all
bind ^U  casesens    all
bind M-X exit        all
bind F3  searchagain all
bind F2  whereis     all
bind ^F  whereis     all

# Main screen keys

bind ^C  copytext    main
bind ^X  cut         main
bind F4  exit        main
bind ^Q  exit        main
bind M-] findbracket main
bind M-B firstline   main
bind M-H firstline   main
bind ^G  gotoline    main
bind M-/ help        main
bind M-I indent      main
bind ^O  insert      main
bind ^N  insert      main
bind M-E lastline    main
bind ^A  mark        main
bind M-. nextbuf     main
bind F10 nohelp      main
bind ^P  nowrap      main
bind M-, prevbuf     main
bind ^Y  redo        main
bind F5  refresh     main
bind ^H  replace     main
bind M-= scrolldown  main
bind M-- scrollup    main
bind ^V  uncut       main
bind ^Z  undo        main
bind ^U  unindent    main
bind M-U unindent    main
bind ^W  writeout    main

## Set this if your backspace key sends delete most of the time (2.1.3+)
# bind kdel backspace all

## Nanorc files
include "/usr/share/nano/nanorc.nanorc"

## C/C++
include "/usr/share/nano/c.nanorc"

## Cascading Style Sheets
include "/usr/share/nano/css.nanorc"

## Debian files
include "/usr/share/nano/debian.nanorc"

## Gentoo files
include "/usr/share/nano/gentoo.nanorc"

## HTML
include "/usr/share/nano/html.nanorc"

## PHP
include "/usr/share/nano/php.nanorc"

## TCL
include "/usr/share/nano/tcl.nanorc"

## TeX
include "/usr/share/nano/tex.nanorc"

## Quoted emails (under e.g. mutt)
include "/usr/share/nano/mutt.nanorc"

## Patch files
include "/usr/share/nano/patch.nanorc"

## Manpages
include "/usr/share/nano/man.nanorc"

## Groff
include "/usr/share/nano/groff.nanorc"

## Perl
include "/usr/share/nano/perl.nanorc"

## Python
include "/usr/share/nano/python.nanorc"

## Ruby
include "/usr/share/nano/ruby.nanorc"

## Java
include "/usr/share/nano/java.nanorc"

## AWK
include "/usr/share/nano/awk.nanorc"

## Assembler
include "/usr/share/nano/asm.nanorc"

## Bourne shell scripts
include "/usr/share/nano/sh.nanorc"

## POV-Ray
include "/usr/share/nano/pov.nanorc"

## XML-type files
include "/usr/share/nano/xml.nanorc"

## Pick/DataBasic files
include "/usr/share/nano/pick.nanorc"



/usr/share/nano/pick.nanorc


## Here is an example for Pick/DataBasic
##
## You'll need to append .pbc to your programs, at least temporarily,
just
## while being edited, because the sytax option (-Y/--syntax=) doesn't
## seem to work.
##
## nano -EFHLOSWcdiklmptwxT3 -o /pathname /pathname/filename.pbc
## nano -EFHLOSWcdiklmptwxT3
-o /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/PRIVLIB /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/PRIVLIB/AMEX.UPDATES.pbc
## !/usr/bin/nano -EFHLOSWcdiklmptwxT3
-o /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/BLIB /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/BLIB/BTREE.BROWSE.pbc

## /usr/bin/nano -EFHLOSWcdiklmptwxT3 -Y pick
-o /home/marcus/qm /home/marcus/qm/works/works/EMV~LIB~V_MAKE_PRIME

syntax "pick" "\.pbc$"


## Default color for everything
# If NOT using local, site-specific, standard var/prog/subroutine-name
highlighting.

icolor brightgreen ".*"


# If using local, site-specific, standard var/prog/subroutine-name
highlighting.
# Color everyithing red by default so any outstanding, unknown terms
stand out.

#icolor red ".*"


## Literal numerals
icolor yellow "(\(|=|#|,|<|\[|-|\+|\*|/|\s)[0-9.]*"

# If using local, site-specific, standard var/prog/subroutine-name
highlighting, then add them here.
#icolor green "(CUSTOMER(S|)|ORDER(S|)|INVOICE(S|)|PRODUCT(S|))"

## keywords
icolor blue "@\("
icolor blue "@(AUTHORIZATION|CRTHIGH|CRTWIDE|DAY|FALSE|ID|LOGNAME|MONTH|
PARASENTENCE|RECORD|SELECTED|SENTENCE|TRUE)[,;:\)'\"\s$]*"
icolor blue "@(A|F|I|R|S|SV|T|V)M"
icolor blue "\s(AND|BREAK|BY|CAPTURING|EQ|FROM|GE|GT|IN|LE|LT|MATCHES|
NE|ON|OR|RETURNING|SETTING|STEP|TO|WITH)\s"
icolor blue "(\s)(CASE|DATA|DO|ELSE|LOCKED|THEN)($|\s|;)"
icolor blue "(^|;|\s)(|\$|#)(COPYRIGHT|DEFINE|DEFFUN|EJECT|IFDEF|IFNDEF|
MAP|OPTIONS|PAGE|UNDEFINE)\s"
icolor blue "(^|;|\s)(BEGIN|CASE|CLEARFILE|(CLOSE|OPEN)(SEQ|)|COM(MON|)|
CONVERT|DEL(ETE|)|DIM(ENSION|)|EQU(ATE|)|FOR|IF|INPUT|LOCATE|SELECT(E|N|
V|)|SLEEP)\s"
icolor blue "(^|;|\s)(MAT(READ|WRITE)(U|)|NEXT|PRINT|PROMPT|READNEXT|
RELEASE|(PROC|TCL)(READ|WRITE)|(READ|WRITE)((|V|VU|U)|SEQ|LIST))\s"
icolor blue "(^|;|\s)(CRT|REPEAT)($|\s|;)"
icolor blue "(^|\s)LOOP($|\s|;)"
icolor blue "(^|\s)(WHILE|UNTIL)(\s)"
icolor blue "^\s*(END|NULL)($|\s|;)"

## Branches
# If NOT using local keyword highlighting, there's no need to reverse
the branches and labels.
icolor red "(^|;|\s)(GO(TO|SUB|)|CALL)\s\s*[A-Z_.0-9]*"
icolor red "(^|;|\s)(EXECUTE|CHAIN|PERFORM)\s"
icolor red "(^|;|\s)(EXIT|CONTINUE|STOP)\s*($|;)"
icolor red "(^|;|\s)(|\$)(INCLUDE|INSERT|CHAIN)\s"
icolor red "(^|;|\s)RETURN($|\s|;|\s\s*(TO|FROM)\s\s*[A-Z_.0-9]*)"

# If using local keyword highlighting, reverse the branches and labels.
#icolor white,black "(^|;|\s)(GO(TO|SUB|)|CALL)\s\s*[A-Z_.0-9]*"
#icolor white,black "(^|;|\s)(EXECUTE|CHAIN|PERFORM)\s"
#icolor white,black "(^|;|\s)(EXIT|CONTINUE|STOP)\s*($|;)"
#icolor white,black "(^|;|\s)(|\$)(INCLUDE|INSERT|CHAIN)\s"
#icolor white,black "(^|;|\s)RETURN($|\s|;|\s\s*(TO|FROM)\s
\s*[A-Z_.0-9]*)"

## Functions
icolor blue "(^|;|\s)(CONVERT|LOCATE)\("
icolor blue "(\(|=|/|\*|\+|-|,|:|\s|'|\")(ABS|ALPHA|ACCESS|ASC|ASCII|
ASSIGNED|CHANGE|CHAR|(|D)COUNT|DELETE|FIELD|(I|O)CONV|INDEX|INSERT|INT|
LEN|LOWER|MOD|NOT|NUM|RAISE|RIGHT|SEQ|SPACE|SQRT|STATUS|STR|SYSTEM|SWAP|
TRIM|UPCASE)\("
icolor blue "(\(|=|/|\*|\+|-|,|:|\s|'|\")(DATE|TIME)\(\)"

## Fix what literal numerals broke, and color operators and such.
icolor blue ",|;|:|<|>|=|#|\(|\)|\[|\]|/|\*|\+|-|!|&"

## strings
icolor yellow "\"[^\"]*\""
icolor yellow "'[^']*'"
icolor yellow "\\[^\\]*\\"

## comments
icolor brightblack "(^|^[A-Z_.0-9]*|^[A-Z_.0-9]*:|;)\s*(!|\*).*$"

## Labels
# If using local keyword highlighting, there's no need to reverse the
branches and labels.
icolor red "^\s*(PROG(RAM|)|SUB(ROUTINE|)|FUN(CTION|))\s\s*[A-Z_.0-9]*"
icolor red "^[A-Z_.0-9]*:"
icolor red "^[0-9]*($|\s|;|:)"

# If using local keyword highlighting, reverse the branches and labels.
#icolor white,black "^\s*(PROG(RAM|)|SUB(ROUTINE|)|FUN(CTION|))\s
\s*[A-Z_.0-9]*"
#icolor white,black "^[A-Z_.0-9]*:"
#icolor white,black "^[0-9]*($|\s|;|:)"

## Trailing spaces
icolor black "[     ]*"
icolor ,red "\s*$"