from small one page howto to huge articles all in one place
 

search text in:




Other .linuxhowtos.org sites: www.linuxhowtos.org
toolsntoys.linuxhowtos.org



Last additions:
How to make X listen on port 6000

How to make X listen on port 6000

words:

34

views:

81975

userrating:

average rating: 1.2 (52 votes) (1=very good 6=terrible)


May, 25th 2007:
April, 26th 2007:
Apr, 10th. 2007:
Druckversion . pdf icon
You are here: Tutorials per portage category->app-editors->VI

4. Startup File


Having explored vi commands somewhat, we are now ready to create
a default editing environment through the use of .exrc,
the configuration file which resides in user's home directory.


.exrc typically contains at least three types of entries:



  1. set commands to create preferred editing environment
  2. map commands to assign functions or macros to keys
  3. ab commands to either map abbreviations or automatically
    correct common spelling errors

When mapping escape sequences of some keys, we may need to
quote them, that is, to insert them literally. This can
be accomplished in vi by issuing a text input command and pressing
Ctrl-V before the key we wish to quote is pressed.


Now let's look at a sample .exrc:



set autoindent
set wrapmargin=8
set ignorecase
map #4 !}fmt^M
ab teh the
ab cutsomer customer

Lines 1 and 2 set autoindent mode on and turn on wordwrap at column
72. Line 3 specifies that all searches are to be case insensitive.
Line 4 maps function key 4 to reformat from the cursor position
to the end of the paragraph
. Finally, lines 5 and 6 map some
common misspellings to the correct spelling. Note that ^M
on lines 4 and 5 are created by pressing Ctrl-V and then
hitting Ctrl-M.


With a little creativity you can make vi look as personal as you wish.


NOTE: After creating .exrc make sure that EXINIT
environment variable is not set as it would overwrite whatever
settings you entered into .exrc. You can verify whether
the EXINIT variable is set using this command from the UNIX command
prompt:



$ set | grep EXINIT

If you see no output, you're fine.


Make sure that .exrc contains no blank lines - they
are not allowed.



/* The article above and any accompanying files are freely
* distributable, but please leave this notice and the text intact.
* Home for this document: http://www.infobound.com/vi.html
* Copyright (C) 1994, 1999 Tony Thomas
* Contact author through email:
tony@infobound.com
* Last revision Feb 23, 1999
* UNIX is a trademark of X/Open
*/


rate this article:
current rating: average rating: 1.1 (40 votes) (1=very good 6=terrible)
Your rating:
Very good (1) Good (2) ok (3) average (4) bad (5) terrible (6)

back



Support us on Content Nation

New Packages

- as rdf newsfeed
- as rss newsfeed
- as Atom newsfeed
2025-11-08
claude-code - 2.0.35
Ebuild name:

dev-util/claude-code-2.0.35

Description

Claude Code - an agentic coding tool by Anthropic

Added to portage

2025-11-08

openpgp-keys-unbound - 20251107
Ebuild name:

sec-keys/openpgp-keys-unbound-20251107

Description

OpenPGP keys used by unbound

Added to portage

2025-11-08

pgFormatter - 5.8
Ebuild name:

dev-db/pgFormatter-5.8

Description

PostgreSQL SQL syntax beautifier

Added to portage

2025-11-08

systemd - 258.2
Ebuild name:

sys-apps/systemd-258.2

Description

System and service manager for Linux

Added to portage

2025-11-08

telegram-desktop-bin - 6.2.4-r1
Ebuild name:

net-im/telegram-desktop-bin-6.2.4-r1

Description

Official desktop client for Telegram (binary package)

Added to portage

2025-11-08

unbound - 1.24.1-r1
Ebuild name:

net-dns/unbound-1.24.1-r1

Description

A validating, recursive and caching DNS resolver

Added to portage

2025-11-08

yt-dlp-ejs - 0.3.1
Ebuild name:

dev-python/yt-dlp-ejs-0.3.1

Description

External JavaScript for yt-dlp supporting many runtimes

Added to portage

2025-11-08

2025-11-07
aioitertools - 0.13.0
Ebuild name:

dev-python/aioitertools-0.13.0

Description

itertools and builtins for AsyncIO and mixed iterables

Added to portage

2025-11-07

asteval - 1.0.7
Ebuild name:

dev-python/asteval-1.0.7

Description

Evaluator of Python expression using ast module

Added to portage

2025-11-07

awscli - 1.42.68
Ebuild name:

app-admin/awscli-1.42.68

Description

Universal Command Line Environment for AWS

Added to portage

2025-11-07

badkeys - 0.0.15
Ebuild name:

app-crypt/badkeys-0.0.15

Description

Check cryptographic keys for known weaknesses

Added to portage

2025-11-07

borgbackup - 1.4.2-r1
Ebuild name:

app-backup/borgbackup-1.4.2-r1

Description

Deduplicating backup program with compression and authenticated encr

Added to portage

2025-11-07

boto3 - 1.40.68
Ebuild name:

dev-python/boto3-1.40.68

Description

The AWS SDK for Python

Added to portage

2025-11-07

botocore - 1.40.68
Ebuild name:

dev-python/botocore-1.40.68

Description

Low-level, data-driven core of boto 3

Added to portage

2025-11-07

cerberus - 1.3.8
Ebuild name:

dev-python/cerberus-1.3.8

Description

A lightweight and extensible data-validation library for Python

Added to portage

2025-11-07

chromium - 143.0.7499.17
Ebuild name:

www-client/chromium-143.0.7499.17

Description

Open-source version of Google Chrome web browser

Added to portage

2025-11-07

chromium - 143.0.7499.4
Ebuild name:

www-client/chromium-143.0.7499.4

Description

Open-source version of Google Chrome web browser

Added to portage

2025-11-07

django-crispy-forms - 2.5
Ebuild name:

dev-python/django-crispy-forms-2.5

Description

DRY Django forms

Added to portage

2025-11-07

dropbox - 236.4.5918
Ebuild name:

net-misc/dropbox-236.4.5918

Description

Dropbox daemon (pretends to be GUI-less)

Added to portage

2025-11-07

ena-driver - 2.16.0
Ebuild name:

net-misc/ena-driver-2.16.0

Description

Amazon EC2 Elastic Network Adapter (ENA) kernel driver

Added to portage

2025-11-07

ffmpeg-chromium - 143
Ebuild name:

media-video/ffmpeg-chromium-143

Description

FFmpeg built specifically for codec support in Chromium-based brows

Added to portage

2025-11-07

flask-compress - 1.23
Ebuild name:

dev-python/flask-compress-1.23

Description

Compress responses in your Flask app with gzip

Added to portage

2025-11-07

girara - 0.4.5-r1
Ebuild name:

dev-libs/girara-0.4.5-r1

Description

UI library that focuses on simplicity and minimalism

Added to portage

2025-11-07

gn - 0.2289
Ebuild name:

dev-build/gn-0.2289

Description

GN is a meta-build system that generates build files for Ninja

Added to portage

2025-11-07

googleapis-common-protos - 1.72.0
Ebuild name:

dev-python/googleapis-common-protos-1.72.0

Description

Python classes generated from the common protos in the g

Added to portage

2025-11-07

grub - 2.14_rc1-r1
Ebuild name:

sys-boot/grub-2.14_rc1-r1

Description

GNU GRUB boot loader

Added to portage

2025-11-07

hishel - 1.1.4
Ebuild name:

dev-python/hishel-1.1.4

Description

An elegant HTTP Cache implementation for HTTPX and HTTP Core

Added to portage

2025-11-07

hypothesis - 6.147.0
Ebuild name:

dev-python/hypothesis-6.147.0

Description

A library for property based testing

Added to portage

2025-11-07

libnvme - 1.16.1
Ebuild name:

sys-libs/libnvme-1.16.1

Description

C Library for NVM Express on Linux

Added to portage

2025-11-07

libreoffice - 25.2.7.2-r1
Ebuild name:

app-office/libreoffice-25.2.7.2-r1

Description

A full office productivity suite

Added to portage

2025-11-07

omemo-dr - 1.0.1-r1
Ebuild name:

dev-python/omemo-dr-1.0.1-r1

Description

OMEMO Crypto Library

Added to portage

2025-11-07

parseclj - 1.1.1
Ebuild name:

app-emacs/parseclj-1.1.1

Description

Clojure Parser for Emacs Lisp

Added to portage

2025-11-07

poppler - 25.11.0
Ebuild name:

app-text/poppler-25.11.0

Description

PDF rendering library based on the xpdf-3.0 code base

Added to portage

2025-11-07

power_assert - 3.0.1
Ebuild name:

dev-ruby/power_assert-3.0.1

Description

Shows each value of variables and method calls in the expression

Added to portage

2025-11-07

prusaslicer - 2.9.4
Ebuild name:

media-gfx/prusaslicer-2.9.4

Description

A mesh slicer to generate G-code for fused-filament-fabrication (3D pri

Added to portage

2025-11-07

rivet - 4.1.2
Ebuild name:

sci-physics/rivet-4.1.2

Description

Rivet toolkit (Robust Independent Validation of Experiment and Theory)

Added to portage

2025-11-07

ruff - 0.14.4
Ebuild name:

dev-util/ruff-0.14.4

Description

An extremely fast Python linter, written in Rust

Added to portage

2025-11-07

runc - 1.2.8
Ebuild name:

app-containers/runc-1.2.8

Description

runc container cli tools

Added to portage

2025-11-07

runc - 1.3.3
Ebuild name:

app-containers/runc-1.3.3

Description

runc container cli tools

Added to portage

2025-11-07

signing-party - 2.11
Ebuild name:

app-crypt/signing-party-2.11

Description

A collection of several tools related to OpenPGP

Added to portage

2025-11-07

simple-tpm-pk11 - 0.06-r2
Ebuild name:

app-crypt/simple-tpm-pk11-0.06-r2

Description

Simple PKCS11 provider for TPM chips

Added to portage

2025-11-07

sqlite3 - 2.8.0
Ebuild name:

dev-ruby/sqlite3-2.8.0

Description

An extension library to access a SQLite database from Ruby

Added to portage

2025-11-07

tailscale - 1.90.6
Ebuild name:

net-vpn/tailscale-1.90.6

Description

Tailscale vpn client

Added to portage

2025-11-07

vivaldi-snapshot - 7.7.3851.25
Ebuild name:

www-client/vivaldi-snapshot-7.7.3851.25

Description

A browser for our friends

Added to portage

2025-11-07

wrapt - 2.0.1
Ebuild name:

dev-python/wrapt-2.0.1

Description

Module for decorators, wrappers and monkey patching

Added to portage

2025-11-07

zathura - 0.5.13
Ebuild name:

app-text/zathura-0.5.13

Description

Highly customizable & functional document viewer

Added to portage

2025-11-07

rdf newsfeed | rss newsfeed | Atom newsfeed
- Powered by LeopardCMS - Running on Gentoo -
Copyright 2004-2020 Sascha Nitsch Unternehmensberatung GmbH
Valid XHTML1.1 : Valid CSS : buttonmaker
- Level Triple-A Conformance to Web Content Accessibility Guidelines 1.0 -
- Copyright and legal notices -
Time to create this page: 43.2 ms