Giter VIP home page Giter VIP logo

dotfiles's Introduction

Dotfiles

reorx's configuration for the whole command line.

Auto Setup

Setup all dotfiles:

$ ./implement.sh -i

Setup a specific software::

$ ./implement.sh -s nvim

Manually Setup

prerequisite:

  • git clone
  • git submodule update --init

zsh

requires:

  • fzf (brew)
    • Run $(brew --prefix)/opt/fzf/install after install
  • fd (brew)
  • pyenv

Link files and folders:

  • oh-my-zsh/ -> ~/.oh-my-zsh
  • oh-my-zsh-custom/ -> ~/.oh-my-zsh-custom
  • pure/ -> ~/.zsh-pure
  • z/ -> ~/.z
  • zshenv -> ~/.zshenv
  • zshrc -> ~/.zshrc
  • zshrc_os -> ~/.zshrc_mac

Note about zsh startup files:

There are five startup files that zsh will read commands from:

  • $ZDOTDIR/.zshenv

    .zshenv is sourced on all invocations of the shell, unless the -f option is set. It should contain commands to set the command search path, plus other important environment variables. `.zshenv' should not contain commands that produce output or assume the shell is attached to a tty.

  • $ZDOTDIR/.zprofile

  • $ZDOTDIR/.zshrc

    .zshrc is sourced in interactive shells. It should contain commands to set up aliases, functions, options, key bindings, etc.

  • $ZDOTDIR/.zlogin

    .zlogin is sourced in login shells. It should contain commands that should be executed only in login shells. .zlogout' is sourced when login shells exit. .zprofile' is similar to .zlogin', except that it is sourced before .zshrc'. .zprofile' is meant as an alternative to .zlogin' for ksh fans; the two are not intended to be used together, although this could certainly be done if desired. `.zlogin' is not the place for alias definitions, options, environment variable settings, etc.; as a general rule, it should not change the shell environment at all. Rather, it should be used to set the terminal type and run a series of external commands (fortune, msgs, etc).

  • $ZDOTDIR/.zlogout

    If ZDOTDIR is not set, then the value of HOME is used; this is the usual case.

fzf

Link files:

  • zshrc_fzf -> ~/.zshrc_fzf
  • bin/batctx -> ~/.local/bin
  • bin/frg -> ~/.local/bin
  • bin/frgi -> ~/.local/bin

Show fzf related commands:

$ fcmds
fzf commands:
  fpreview        preview searched files
  fkill           kill searched processes
  fed             open searched files with EDITOR
  frg             filter rg result, open with EDITOR
  frgi            interactive rg search, open with EDITOR

bash

requires:

Link files:

  • bashrc -> ~/.bashrc

tmux

requires:

  • tpm: git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

Link files:

  • tmux.conf -> ~/.tmux.conf

Post install:

  • start tmux and press prefix + I to fetch plugins

a local build python 3

PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install 3.9.2

It seems this process is very smooth in the newest macOS (Big Sur), for old issues and other platforms, check [[pyenv install python]] in Obsidian-Base.

nvim

requires:

  • python (a local build python 3)
    • virtualenv for nvim python provider

      mkdir ~/.virtualenvs
      cd ~/.virtualenvs
      python -m venv neovim-python3
      pve-activate
      pip install pynvim
      

Link:

  • nvim/ -> ./.nvim
  • nvimrc -> ./.nvimrc
  • cd ~/.config/nvim && ln -s ~/.nvim/init.vim .

Run:

:PlugInstall
:UpdateRemotePlugins

Install LSP for certain language

nvim a.py
:LspInstallServer

vim

Link:

  • vimrc -> ~/.vimrc

Note: Because nvim has been a successful replacement for vim, this vimrc stopped to provide plugins, keeps a minimal basic configuration

dotfiles's People

Contributors

reorx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.