[ / / / / / / / / / / / / / ] [ dir / random / 93 / biohzrd / hkacade / hkpnd / tct / utd / uy / yebalnia ]

/slackware/ - Slackware Linux

#slackware@irc.rizon.net
Name
Email
Subject
REC
STOP
Comment *
File
Password (Randomized for file and post deletion; you may also set your own.)
Archive
* = required field[▶Show post options & limits]
Confused? See the FAQ.
Options

Allowed file types:jpg, jpeg, gif, png, webp,webm, mp4, mov
Max filesize is16 MB.
Max image dimensions are15000 x15000.
You may upload5 per post.


File: a64d3386f64d495⋯.png (27.68 KB,269x270,269:270,9b00da59.png)

 No.46

From http://slackware.mirrors.tds.net/slackware/slackware-current/ChangeLog.txt :

Mon Jan 13 00:11:55 UTC 2020

a/elvis-2.2_0-i586-5.txz: Rebuilt.

Don't make /usr/bin/{ex,vi} symlinks.

a/nvi-1.81.6-i586-1.txz: Added.

This is an implementation of the classic ex/vi text editor written by Keith

Bostic. Due to this having UTF8 support which elvis lacks, we'll have it

take over the ex/vi symlinks if they aren't already pointing to a different

choice. Note that the removal of vi/ex symlinks from the elvis and vim

packages might cause your ex/vi symlinks to point to this after all the ex/vi

packages have been upgraded. You can set them to your preferences using

pkgtool -> Setup -> vi-ex.

As you can see, Elvis is being substituted by nvi.

I've done some editing with nvi to see how it goes, and from the little usage I've gotten from it, it's acceptable for simple day to day editing.

Now, if you're writing source code, beware that nvi doesn't have syntax highlighting. All you get are the colours of your terminal/console.

Since I'm learning the basics of Python programming and I make a lot of mistakes, syntax highlighting is very helpful.

Hence enter Vim. It comes standard with a Slackware 14.2 installation, and is the closest you can get to ex/vi along Elvis. Vim has syntax highlighting and is very configurable. Since Elvis seems to be walking out the door, I thought I might as well switch to Vim for coding, and perhaps use nvi for other stuff.

Below is my current $HOME/.vimrc file.

Source: https://gist.githubusercontent.com/mayela/eeca45cb841ada6019936923ce47a53d/raw/82aa079fa6d4516266e4d4ebd9034434342362c8/Python%2520highlighting%2520syntax%2520on%2520Vim

$ cat ~/.vimrc

" enable syntax highlighting

syntax on

" show line numbers

set number

" set tabs to have 4 spaces

set tabstop=4

" indent when moving to the next line while writing code

set autoindent

" expand tabs into spaces

set expandtab

" when using the >> or << commands, shift lines by 4 spaces

set shiftwidth=4

" show a visual line under the cursor's current line

set cursorline

" show the matching part of the pair for [] {} and ()

set showmatch

" enable all Python syntax highlighting features

let python_highlight_all = 1

" use a dark background

set background=dark

" don't highlight searches

set nohlsearch

set wildmenu

set showcmd

set softtabstop=4

filetype indent on

let g:ycm_python_binary_path = 'python'

let g:indent_guides_start_level = 2

let g:indent_guides_auto_colors = 1

let g:indentLine_leadingSpaceChar = '·'

let g:indentLine_leadingSpaceEnabled = 1

" Keywords {{{

"====

syn keyword pythonStatement break continue del

syn keyword pythonStatement exec return

syn keyword pythonStatement pass raise

syn keyword pythonStatement global nonlocal assert

syn keyword pythonStatement yield

syn keyword pythonLambdaExpr lambda

syn keyword pythonStatement with as

syn keyword pythonStatement def nextgroup=pythonFunction skipwhite

syn match pythonFunction "\%(\%(def\s\|@\)\s*\)\@<=\h\%(\w\|\.\)*" contained nextgroup=pythonVars

syn region pythonVars start="(" skip=+\(".*"\|'.*'\)+ end=")" contained contains=pythonParameters transparent keepend

syn match pythonParameters "[^,]*" contained contains=pythonParam skipwhite

syn match pythonParam "[^,]*" contained contains=pythonExtraOperator,pythonLambdaExpr,pythonBuiltinObj,pythonBuiltinType,pythonConstant,pythonString,pythonNumber,pythonBrackets,pythonSelf,pythonComment skipwhite

syn match pythonBrackets "{[(|)]}" contained skipwhite

syn keyword pythonStatement class nextgroup=pythonClass skipwhite

syn match pythonClass "\%(\%(class\s\)\s*\)\@<=\h\%(\w\|\.\)*" contained nextgroup=pythonClassVars

syn region pythonClassVars start="(" end=")" contained contains=pythonClassParameters transparent keepend

syn match pythonClassParameters "[^,\*]*" contained contains=pythonBuiltin,pythonBuiltinObj,pythonBuiltinType,pythonExtraOperatorpythonStatement,pythonBrackets,pythonString,pythonComment skipwhite

syn keyword pythonRepeat for while

syn keyword pythonConditional if elif else

syn keyword pythonInclude import from

syn keyword pythonException try except finally

syn keyword pythonOperator and in is not or

syn match pythonExtraOperator "\%([~!^&|/%+-]\|\%(class\s*\)\@<!<<\|<=>\|<=\|\%(<\|\<class\s\+\u\w*\s*\)\@<!<[^<]\@=\=\|\|=\~\|>>\|>=\|=\@<!>\|\.\.\.\|\.\.\|::\)"

syn match pythonExtraPseudoOperator "\%(-=\|/=\|\*\*=\|\*=\|&&=\|&=\|&&\|||=\||=\|||\|%=\|+=\|!\~\|!=\)"

syn keyword pythonStatement print

syn keyword pythonStatement async await

syn match pythonStatement "\<async\s\+def\>" nextgroup=pythonFunction skipwhite

syn match pythonStatement "\<async\s\+with\>" display

syn match pythonStatement "\<async\s\+for\>" nextgroup=pythonRepeat skipwhite

syn match pythonExtraOperator "\%(=\)"

syn match pythonExtraOperator "\%(\*\|\*\*\)"

syn keyword pythonSelf self cls

" }}}

" Decorators {{{

"======

syn match pythonDecorator "@" display nextgroup=pythonDottedName skipwhite

syn match pythonDottedName "[a-zA-Z_][a-zA-Z0-9_]*\(\.[a-zA-Z_][a-zA-Z0-9_]*\)*" display contained

syn match pythonDot "\." display containedin=pythonDottedName

" }}}

" Comments {{{

"====

syn match pythonComment "#.*$" display contains=pythonTodo,@Spell

syn match pythonRun "\%^#!.*$"

syn match pythonCoding "\%^.*\(\n.*\)\?#.*coding[:=]\s*[0-9A-Za-z-_.]\+.*$"

syn keyword pythonTodo TODO FIXME XXX contained

" }}}

" Errors {{{

"==

syn match pythonError "\<\d\+\D\+\>" display

syn match pythonError "[$?]" display

syn match pythonError "[&|]\{2,}" display

syn match pythonError "[=]\{3,}" display

syn match pythonIndentError "^\s*\( \t\|\t \)\s*\S"me=e-1 display

syn match pythonSpaceError "\s\+$" display

" Strings {{{

"===

syn region pythonString start=+[bB]\='+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonEscape,pythonEscapeError,@Spell

syn region pythonString start=+[bB]\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonEscape,pythonEscapeError,@Spell

syn region pythonString start=+[bB]\="""+ end=+"""+ keepend contains=pythonEscape,pythonEscapeError,pythonDocTest2,pythonSpaceError,@Spell

syn region pythonString start=+[bB]\=+ end=++ keepend contains=pythonEscape,pythonEscapeError,pythonDocTest,pythonSpaceError,@Spell

syn match pythonEscape +\\[abfnrtv'"\\]+ display contained

syn match pythonEscape "\\\o\o\=\o\=" display contained

syn match pythonEscapeError "\\\o\{,2}[89]" display contained

syn match pythonEscape "\\x\x\{2}" display contained

syn match pythonEscapeError "\\x\x\=\X" display contained

syn match pythonEscape "\\$"

" Unicode

syn region pythonUniString start=+[uU]'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,@Spell

syn region pythonUniString start=+[uU]"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,@Spell

syn region pythonUniString start=+[uU]"""+ end=+"""+ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,pythonDocTest2,pythonSpaceError,@Spell

syn region pythonUniString start=+[uU]+ end=++ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,pythonDocTest,pythonSpaceError,@Spell

syn match pythonUniEscape "\\u\x\{4}" display contained

syn match pythonUniEscapeError "\\u\x\{,3}\X" display contained

syn match pythonUniEscape "\\U\x\{8}" display contained

syn match pythonUniEscapeError "\\U\x\{,7}\X" display contained

syn match pythonUniEscape "\\N{[A-Z ]\+}" display contained

syn match pythonUniEscapeError "\\N{[^A-Z ]\+}" display contained

" Raw strings

syn region pythonRawString start=+[rR]'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonRawEscape,@Spell

syn region pythonRawString start=+[rR]"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonRawEscape,@Spell

syn region pythonRawString start=+[rR]"""+ end=+"""+ keepend contains=pythonDocTest2,pythonSpaceError,@Spell

syn region pythonRawString start=+[rR]+ end=++ keepend contains=pythonDocTest,pythonSpaceError,@Spell

syn match pythonRawEscape +\\['"]+ display transparent contained

" Unicode raw strings

syn region pythonUniRawString start=+[uU][rR]'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonRawEscape,pythonUniRawEscape,pythonUniRawEscapeError,@Spell

syn region pythonUniRawString start=+[uU][rR]"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonRawEscape,pythonUniRawEscape,pythonUniRawEscapeError,@Spell

syn region pythonUniRawString start=+[uU][rR]"""+ end=+"""+ keepend contains=pythonUniRawEscape,pythonUniRawEscapeError,pythonDocTest2,pythonSpaceError,@Spell

syn region pythonUniRawString start=+[uU][rR]+ end=++ keepend contains=pythonUniRawEscape,pythonUniRawEscapeError,pythonDocTest,pythonSpaceError,@Spell

syn match pythonUniRawEscape "\([^\\]\(\\\\\)*\)\@<=\\u\x\{4}" display contained

syn match pythonUniRawEscapeError "\([^\\]\(\\\\\)*\)\@<=\\u\x\{,3}\X" display contained

" String formatting

syn match pythonStrFormatting "%\(([^)]\+)\)\=[-#0 +]*\d*\(\.\d\+\)\=[hlL]\=[diouxXeEfFgGcrs%]" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString

syn match pythonStrFormatting "%[-#0 +]*\(\*\|\d\+\)\=\(\.\(\*\|\d\+\)\)\=[hlL]\=[diouxXeEfFgGcrs%]" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString

" Str.format syntax

syn match pythonStrFormat "{{\|}}" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString

syn match pythonStrFormat "{\([a-zA-Z0-9_]*\|\d\+\)\(\.[a-zA-Z_][a-zA-Z0-9_]*\|\[\(\d\+\|[^!:\}]\+\)\]\)*\(![rs]\)\=\(:\({\([a-zA-Z_][a-zA-Z0-9_]*\|\d\+\)}\|\([^}]\=[<>=^]\)\=[ +-]\=#\=0\=\d*\(\.\d\+\)\=[bcdeEfFgGnoxX%]\=\)\=\)\=}" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString

" String templates

syn match pythonStrTemplate "\$\$" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString

syn match pythonStrTemplate "\${[a-zA-Z_][a-zA-Z0-9_]*}" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString

syn match pythonStrTemplate "\$[a-zA-Z_][a-zA-Z0-9_]*" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString

" DocTests

syn region pythonDocTest start="^\s*>>>" end=+'''+he=s-1 end="^\s*$" contained

syn region pythonDocTest2 start="^\s*>>>" end=+"""+he=s-1 end="^\s*$" contained

" DocStrings

syn region pythonDocstring start=+^\s*[uU]\?[rR]\?"""+ end=+"""+ keepend excludenl contains=pythonEscape,@Spell,pythonDoctest,pythonDocTest2,pythonSpaceError

syn region pythonDocstring start=+^\s*[uU]\?[rR]\?+ end=++ keepend excludenl contains=pythonEscape,@Spell,pythonDoctest,pythonDocTest2,pythonSpaceError

" }}}

" Numbers {{{

"===

syn match pythonHexError "\<0[xX]\x*[g-zG-Z]\x*[lL]\=\>" display

syn match pythonHexNumber "\<0[xX]\x\+[lL]\=\>" display

syn match pythonOctNumber "\<0[oO]\o\+[lL]\=\>" display

syn match pythonBinNumber "\<0[bB][01]\+[lL]\=\>" display

syn match pythonNumber "\<\d\+[lLjJ]\=\>" display

syn match pythonFloat "\.\d\+\([eE][+-]\=\d\+\)\=[jJ]\=\>" display

syn match pythonFloat "\<\d\+[eE][+-]\=\d\+[jJ]\=\>" display

syn match pythonFloat "\<\d\+\.\d*\([eE][+-]\=\d\+\)\=[jJ]\=" display

syn match pythonOctError "\<0[oO]\=\o*[8-9]\d*[lL]\=\>" display

syn match pythonBinError "\<0[bB][01]*[2-9]\d*[lL]\=\>" display

" }}}

" Builtins {{{

"====

" Builtin objects and types

syn keyword pythonBuiltinObj True False Ellipsis None NotImplemented

syn keyword pythonBuiltinObj debug doc file name package

syn keyword pythonBuiltinType type object

syn keyword pythonBuiltinType str basestring unicode buffer bytearray bytes chr unichr

syn keyword pythonBuiltinType dict int long bool float complex set frozenset list tuple

syn keyword pythonBuiltinType file super

" Builtin functions

syn keyword pythonBuiltinFunc import abs all any apply

syn keyword pythonBuiltinFunc bin callable classmethod cmp coerce compile

syn keyword pythonBuiltinFunc delattr dir divmod enumerate eval execfile filter

syn keyword pythonBuiltinFunc format getattr globals locals hasattr hash help hex id

syn keyword pythonBuiltinFunc input intern isinstance issubclass iter len map max min

syn keyword pythonBuiltinFunc next oct open ord pow property range xrange

syn keyword pythonBuiltinFunc raw_input reduce reload repr reversed round setattr

syn keyword pythonBuiltinFunc slice sorted staticmethod sum vars zip

syn keyword pythonBuiltinFunc print

" Builtin exceptions and warnings

syn keyword pythonExClass BaseException

syn keyword pythonExClass Exception StandardError ArithmeticError

syn keyword pythonExClass LookupError EnvironmentError

syn keyword pythonExClass AssertionError AttributeError BufferError EOFError

syn keyword pythonExClass FloatingPointError GeneratorExit IOError

syn keyword pythonExClass ImportError IndexError KeyError

syn keyword pythonExClass KeyboardInterrupt MemoryError NameError

syn keyword pythonExClass NotImplementedError OSError OverflowError

syn keyword pythonExClass ReferenceError RuntimeError StopIteration

syn keyword pythonExClass SyntaxError IndentationError TabError

syn keyword pythonExClass SystemError SystemExit TypeError

syn keyword pythonExClass UnboundLocalError UnicodeError

syn keyword pythonExClass UnicodeEncodeError UnicodeDecodeError

syn keyword pythonExClass UnicodeTranslateError ValueError VMSError

syn keyword pythonExClass WindowsError ZeroDivisionError

syn keyword pythonExClass Warning UserWarning BytesWarning DeprecationWarning

syn keyword pythonExClass PendingDepricationWarning SyntaxWarning

syn keyword pythonExClass RuntimeWarning FutureWarning

syn keyword pythonExClass ImportWarning UnicodeWarning

" }}}

" Enhanced python highlighting

highlight pythonLambdaExpr ctermfg=105 guifg=#8787ff

highlight pythonInclude ctermfg=68 guifg=#5f87d7 cterm=bold gui=bold

highlight pythonClass ctermfg=167 guifg=#FF62B0 cterm=bold gui=bold

highlight pythonParameters ctermfg=147 guifg=#AAAAFF

highlight pythonParam ctermfg=175 guifg=#E37795

highlight pythonBrackets ctermfg=183 guifg=#d7afff

highlight pythonClassParameters ctermfg=111 guifg=#FF5353

highlight pythonSelf ctermfg=68 guifg=#5f87d7 cterm=bold gui=bold

highlight pythonDottedName ctermfg=74 guifg=#5fafd7

highlight pythonError ctermfg=196 guifg=#ff0000

highlight pythonIndentError ctermfg=197 guifg=#ff005f

highlight pythonSpaceError ctermfg=198 guifg=#ff0087

highlight pythonBuiltinType ctermfg=74 guifg=#9191FF

highlight pythonBuiltinObj ctermfg=71 guifg=#5faf5f

highlight pythonBuiltinFunc ctermfg=169 guifg=#d75faf cterm=bold gui=bold

highlight pythonException ctermfg=207 guifg=#CC3366 cterm=bold gui=bold

____________________________
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
Post last edited at


[Return][Go to top][Catalog][Nerve Center][Random][Post a Reply]
Delete Post [ ]
[]
[ / / / / / / / / / / / / / ] [ dir / random / 93 / biohzrd / hkacade / hkpnd / tct / utd / uy / yebalnia ]