initial commit for dotfiles etc.
This commit is contained in:
commit
a9c2fb5508
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
/backup
|
||||||
|
/home_internal
|
||||||
|
/root_internal
|
19
home_external/.bash_aliases
Normal file
19
home_external/.bash_aliases
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
if [ "$TERM" == 'xterm-kitty' ]; then
|
||||||
|
alias ssh='kitty +kitten ssh'
|
||||||
|
fi
|
||||||
|
|
||||||
|
DEFAULT_RSYNC='--verbose --recursive --progress --delay-updates --human-readable --links --hard-links --perms'
|
||||||
|
|
||||||
|
alias l='ls -l -v --all --human-readable --classify --group-directories-first'
|
||||||
|
alias r='reset'
|
||||||
|
alias ..='cd ..'
|
||||||
|
alias refresh_bashrc='. ~/.bashrc' # alternatively: 'source ~/.bashrc'
|
||||||
|
alias rsync_default="rsync $DEFAULT_RSYNC --checksum"
|
||||||
|
alias rsync_backup="rsync $DEFAULT_RSYNC --checksum --times --group --owner --delete"
|
||||||
|
alias rsync_move='rsync_default --remove-source-files'
|
||||||
|
alias rsync_update="rsync $DEFAULT_RSYNC --update --times"
|
||||||
|
alias off='systemctl poweroff'
|
||||||
|
alias nnn='nnn -dHrR'
|
||||||
|
alias nn='n -dHrR'
|
||||||
|
alias finds='find $* 2>/dev/null'
|
||||||
|
alias c='clear'
|
10
home_external/.bash_aliases_extra
Normal file
10
home_external/.bash_aliases_extra
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
alias mount_garrus='sshMount fabian FabisDokumente && sshMount media Filme'
|
||||||
|
alias unmount_garrus='sshUnmount FabisDokumente && sshUnmount Filme'
|
||||||
|
|
||||||
|
sshMount() {
|
||||||
|
sshfs fabian@garrus:/citadel/$1/ /home/fabian/$2/ -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=8
|
||||||
|
}
|
||||||
|
|
||||||
|
sshUnmount() {
|
||||||
|
fusermount -u /home/fabian/$1
|
||||||
|
}
|
7
home_external/.bash_logout
Normal file
7
home_external/.bash_logout
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# ~/.bash_logout: executed by bash(1) when login shell exits.
|
||||||
|
|
||||||
|
# when leaving the console clear the screen to increase privacy
|
||||||
|
|
||||||
|
if [ "$SHLVL" = 1 ]; then
|
||||||
|
[ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
|
||||||
|
fi
|
5
home_external/.bash_profile
Normal file
5
home_external/.bash_profile
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#
|
||||||
|
# ~/.bash_profile
|
||||||
|
#
|
||||||
|
|
||||||
|
[[ -f ~/.bashrc ]] && . ~/.bashrc
|
216
home_external/.bashrc
Normal file
216
home_external/.bashrc
Normal file
@ -0,0 +1,216 @@
|
|||||||
|
# ~/.bashrc: executed by bash(1) for non-login shells.
|
||||||
|
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
||||||
|
# for examples
|
||||||
|
|
||||||
|
# If not running interactively, don't do anything
|
||||||
|
if [[ $- != *i* ]]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
# case $- in # <- war der default in pop!_os, kann also weg, wenns nicht weiter gebraucht wird...
|
||||||
|
# *i*)
|
||||||
|
# ;;
|
||||||
|
# *)
|
||||||
|
# return
|
||||||
|
# ;;
|
||||||
|
# esac
|
||||||
|
|
||||||
|
# set environment vars z.Bsp. for nnn
|
||||||
|
export EDITOR=nano
|
||||||
|
|
||||||
|
# set environment vars for nnn (specifically)
|
||||||
|
export NNN_BMS='h:~;g:/home/FabisDokumente;f:~/Firehawk'
|
||||||
|
export NNN_COLORS="2136" # use a different color for each context
|
||||||
|
if [ -f /usr/share/nnn/quitcd/quitcd.bash_zsh ]; then
|
||||||
|
source /usr/share/nnn/quitcd/quitcd.bash_zsh
|
||||||
|
fi
|
||||||
|
|
||||||
|
# don't put duplicate lines or lines starting with space in the history.
|
||||||
|
# See bash(1) for more options
|
||||||
|
HISTCONTROL=ignoreboth:erasedups
|
||||||
|
|
||||||
|
# append to the history file, don't overwrite it
|
||||||
|
shopt -s histappend
|
||||||
|
|
||||||
|
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
|
||||||
|
HISTSIZE=2000
|
||||||
|
HISTFILESIZE=2000
|
||||||
|
|
||||||
|
# check the window size after each command and, if necessary,
|
||||||
|
# update the values of LINES and COLUMNS.
|
||||||
|
shopt -s checkwinsize
|
||||||
|
|
||||||
|
# If set, the pattern "**" used in a pathname expansion context will
|
||||||
|
# match all files and zero or more directories and subdirectories.
|
||||||
|
shopt -s globstar
|
||||||
|
|
||||||
|
# make less more friendly for non-text input files, see lesspipe(1)
|
||||||
|
if [ -x /usr/bin/lesspipe ]; then
|
||||||
|
eval "$(SHELL=/bin/sh lesspipe)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# set variable identifying the chroot you work in (used in the prompt below)
|
||||||
|
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
|
||||||
|
debian_chroot=$(cat /etc/debian_chroot)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# set a fancy prompt (non-color, unless we know we "want" color)
|
||||||
|
case "$TERM" in
|
||||||
|
xterm-color|*-256color|xterm-kitty)
|
||||||
|
color_prompt=yes
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# uncomment for a colored prompt, if the terminal has the capability; turned
|
||||||
|
# off by default to not distract the user: the focus in a terminal window
|
||||||
|
# should be on the output of commands, not on the prompt
|
||||||
|
# force_color_prompt=yes
|
||||||
|
|
||||||
|
if [ -n "$force_color_prompt" ]; then
|
||||||
|
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
|
||||||
|
# We have color support; assume it's compliant with Ecma-48
|
||||||
|
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
|
||||||
|
# a case would tend to support setf rather than setaf.)
|
||||||
|
color_prompt=yes
|
||||||
|
else
|
||||||
|
color_prompt=
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$color_prompt" = yes ]; then
|
||||||
|
if [[ ${EUID} == 0 ]] ; then # shiny red prompt for root
|
||||||
|
PS1='\[\033[01;31m\]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||||
|
else
|
||||||
|
# PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||||
|
PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
PS1='\u@\h:\w\$ '
|
||||||
|
fi
|
||||||
|
unset color_prompt force_color_prompt
|
||||||
|
|
||||||
|
# If this is an xterm set the title to user@host:dir
|
||||||
|
case "$TERM" in
|
||||||
|
xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*)
|
||||||
|
# PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
|
||||||
|
PS1="\[\e]0;\u@\h: \w\a\]$PS1"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# enable color support of ls and also add handy aliases
|
||||||
|
if [ -x /usr/bin/dircolors ]; then
|
||||||
|
if [ -r ~/.dircolors ]; then
|
||||||
|
eval "$(dircolors -b ~/.dircolors)"
|
||||||
|
elif [ -r /etc/DIR_COLORS ] ; then
|
||||||
|
eval $(dircolors -b /etc/DIR_COLORS)
|
||||||
|
else
|
||||||
|
eval "$(dircolors -b)"
|
||||||
|
fi
|
||||||
|
alias ls='ls --color=auto'
|
||||||
|
alias dir='dir --color=auto'
|
||||||
|
alias vdir='vdir --color=auto'
|
||||||
|
|
||||||
|
alias grep='grep --color=auto'
|
||||||
|
alias fgrep='fgrep --color=auto'
|
||||||
|
alias egrep='egrep --color=auto'
|
||||||
|
fi
|
||||||
|
|
||||||
|
# colored GCC warnings and errors
|
||||||
|
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
||||||
|
|
||||||
|
# some more ls aliases
|
||||||
|
# alias ll='ls -alF'
|
||||||
|
# alias la='ls -A'
|
||||||
|
# alias l='ls -CF'
|
||||||
|
|
||||||
|
# Add an "alert" alias for long running commands. Use like so:
|
||||||
|
# sleep 10; alert
|
||||||
|
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
|
||||||
|
|
||||||
|
# Alias definitions.
|
||||||
|
# You may want to put all your additions into a separate file like
|
||||||
|
# ~/.bash_aliases, instead of adding them here directly.
|
||||||
|
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
|
||||||
|
|
||||||
|
if [ -f ~/.bash_aliases ]; then
|
||||||
|
. ~/.bash_aliases
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ~/.bash_aliases_extra ]; then
|
||||||
|
. ~/.bash_aliases_extra
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ~/.bash_aliases_local ]; then
|
||||||
|
. ~/.bash_aliases_local
|
||||||
|
fi
|
||||||
|
|
||||||
|
# enable programmable completion features (you don't need to enable
|
||||||
|
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
||||||
|
# sources /etc/bash.bashrc).
|
||||||
|
if ! shopt -oq posix; then
|
||||||
|
if [ -r /usr/share/bash-completion/bash_completion ]; then
|
||||||
|
. /usr/share/bash-completion/bash_completion
|
||||||
|
elif [ -r /etc/bash_completion ]; then
|
||||||
|
. /etc/bash_completion
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
colours() {
|
||||||
|
local fgc bgc vals seq0
|
||||||
|
|
||||||
|
printf "Color escapes are %s\n" '\e[${value};...;${value}m'
|
||||||
|
printf "Values 30..37 are \e[33mforeground colors\e[m\n"
|
||||||
|
printf "Values 40..47 are \e[43mbackground colors\e[m\n"
|
||||||
|
printf "Value 1 gives a \e[1mbold-faced look\e[m\n\n"
|
||||||
|
|
||||||
|
# foreground colors
|
||||||
|
for fgc in {30..37}; do
|
||||||
|
# background colors
|
||||||
|
for bgc in {40..47}; do
|
||||||
|
fgc=${fgc#37} # white
|
||||||
|
bgc=${bgc#40} # black
|
||||||
|
|
||||||
|
vals="${fgc:+$fgc;}${bgc}"
|
||||||
|
vals=${vals%%;}
|
||||||
|
|
||||||
|
seq0="${vals:+\e[${vals}m}"
|
||||||
|
printf " %-9s" "${seq0:-(default)}"
|
||||||
|
printf " ${seq0}TEXT\e[m"
|
||||||
|
printf " \e[${vals:+${vals+$vals;}}1mBOLD\e[m"
|
||||||
|
done
|
||||||
|
echo; echo
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
# ex - archive extractor
|
||||||
|
# usage: ex <file>
|
||||||
|
ex ()
|
||||||
|
{
|
||||||
|
if [ -f $1 ] ; then
|
||||||
|
case $1 in
|
||||||
|
*.tar.bz2) tar xjf $1 ;;
|
||||||
|
*.tar.gz) tar xzf $1 ;;
|
||||||
|
*.bz2) bunzip2 $1 ;;
|
||||||
|
*.rar) unrar x $1 ;;
|
||||||
|
*.gz) gunzip $1 ;;
|
||||||
|
*.tar) tar xf $1 ;;
|
||||||
|
*.tbz2) tar xjf $1 ;;
|
||||||
|
*.tgz) tar xzf $1 ;;
|
||||||
|
*.zip) unzip $1 ;;
|
||||||
|
*.Z) uncompress $1;;
|
||||||
|
*.7z) 7z x $1 ;;
|
||||||
|
*) echo "'$1' cannot be extracted via ex()" ;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
echo "'$1' is not a valid file"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# BEGIN_KITTY_SHELL_INTEGRATION
|
||||||
|
if test -n "$KITTY_INSTALLATION_DIR" -a -e "$KITTY_INSTALLATION_DIR/shell-integration/bash/kitty.bash"; then source "$KITTY_INSTALLATION_DIR/shell-integration/bash/kitty.bash"; fi
|
||||||
|
# END_KITTY_SHELL_INTEGRATION
|
||||||
|
|
||||||
|
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
|
||||||
|
export SDKMAN_DIR="$HOME/.sdkman"
|
||||||
|
[[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh"
|
2
home_external/.config/kitty/default.session
Normal file
2
home_external/.config/kitty/default.session
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Set the layout for the current tab
|
||||||
|
layout splits
|
170
home_external/.config/kitty/diff.conf
Normal file
170
home_external/.config/kitty/diff.conf
Normal file
@ -0,0 +1,170 @@
|
|||||||
|
# vim:fileencoding=utf-8:foldmethod=marker
|
||||||
|
|
||||||
|
#: Diffing {{{
|
||||||
|
|
||||||
|
syntax_aliases pyj:py pyi:py recipe:py
|
||||||
|
|
||||||
|
#: File extension aliases for syntax highlight For example, to syntax
|
||||||
|
#: highlight file.xyz as file.abc use a setting of xyz:abc
|
||||||
|
|
||||||
|
num_context_lines 3
|
||||||
|
|
||||||
|
#: The number of lines of context to show around each change.
|
||||||
|
|
||||||
|
diff_cmd auto
|
||||||
|
|
||||||
|
#: The diff command to use. Must contain the placeholder _CONTEXT_
|
||||||
|
#: which will be replaced by the number of lines of context. The
|
||||||
|
#: default is to search the system for either git or diff and use
|
||||||
|
#: that, if found.
|
||||||
|
|
||||||
|
replace_tab_by \x20\x20\x20\x20
|
||||||
|
|
||||||
|
#: The string to replace tabs with. Default is to use four spaces.
|
||||||
|
|
||||||
|
#: }}}
|
||||||
|
|
||||||
|
#: Colors {{{
|
||||||
|
|
||||||
|
pygments_style default
|
||||||
|
|
||||||
|
#: The pygments color scheme to use for syntax highlighting. See
|
||||||
|
#: pygments builtin styles <https://pygments.org/styles/> for a list
|
||||||
|
#: of schemes.
|
||||||
|
|
||||||
|
foreground white
|
||||||
|
background black
|
||||||
|
|
||||||
|
#: Basic colors
|
||||||
|
|
||||||
|
title_fg white
|
||||||
|
title_bg black
|
||||||
|
|
||||||
|
#: Title colors
|
||||||
|
|
||||||
|
margin_bg #394d60
|
||||||
|
margin_fg #aaaaaa
|
||||||
|
|
||||||
|
#: Margin colors
|
||||||
|
|
||||||
|
removed_bg #990012
|
||||||
|
highlight_removed_bg #63030e
|
||||||
|
removed_margin_bg #b30015
|
||||||
|
|
||||||
|
#: Removed text backgrounds
|
||||||
|
|
||||||
|
added_bg #00992b
|
||||||
|
highlight_added_bg #189a39
|
||||||
|
added_margin_bg #00a323
|
||||||
|
|
||||||
|
#: Added text backgrounds
|
||||||
|
|
||||||
|
filler_bg #394d60
|
||||||
|
|
||||||
|
#: Filler (empty) line background
|
||||||
|
|
||||||
|
margin_filler_bg black
|
||||||
|
|
||||||
|
#: Filler (empty) line background in margins, defaults to the filler
|
||||||
|
#: background
|
||||||
|
|
||||||
|
hunk_margin_bg #0059b3
|
||||||
|
hunk_bg #004d99
|
||||||
|
|
||||||
|
#: Hunk header colors
|
||||||
|
|
||||||
|
search_bg #444
|
||||||
|
search_fg white
|
||||||
|
select_bg #0351b0
|
||||||
|
select_fg white
|
||||||
|
|
||||||
|
#: Highlighting
|
||||||
|
|
||||||
|
#: }}}
|
||||||
|
|
||||||
|
#: Keyboard shortcuts {{{
|
||||||
|
|
||||||
|
#: Quit
|
||||||
|
|
||||||
|
map q quit
|
||||||
|
map esc quit
|
||||||
|
|
||||||
|
#: Scroll down
|
||||||
|
|
||||||
|
map j scroll_by 1
|
||||||
|
map down scroll_by 1
|
||||||
|
|
||||||
|
#: Scroll up
|
||||||
|
|
||||||
|
map k scroll_by -1
|
||||||
|
map up scroll_by -1
|
||||||
|
|
||||||
|
#: Scroll to top
|
||||||
|
|
||||||
|
map home scroll_to start
|
||||||
|
|
||||||
|
#: Scroll to bottom
|
||||||
|
|
||||||
|
map end scroll_to end
|
||||||
|
|
||||||
|
#: Scroll to next page
|
||||||
|
|
||||||
|
map page_down scroll_to next-page
|
||||||
|
map space scroll_to next-page
|
||||||
|
|
||||||
|
#: Scroll to previous page
|
||||||
|
|
||||||
|
map page_up scroll_to prev-page
|
||||||
|
|
||||||
|
#: Scroll to next change
|
||||||
|
|
||||||
|
map n scroll_to next-change
|
||||||
|
|
||||||
|
#: Scroll to previous change
|
||||||
|
|
||||||
|
map p scroll_to prev-change
|
||||||
|
|
||||||
|
#: Show all context
|
||||||
|
|
||||||
|
map a change_context all
|
||||||
|
|
||||||
|
#: Show default context
|
||||||
|
|
||||||
|
map = change_context default
|
||||||
|
|
||||||
|
#: Increase context
|
||||||
|
|
||||||
|
map + change_context 5
|
||||||
|
|
||||||
|
#: Decrease context
|
||||||
|
|
||||||
|
map - change_context -5
|
||||||
|
|
||||||
|
#: Search forward
|
||||||
|
|
||||||
|
map / start_search regex forward
|
||||||
|
|
||||||
|
#: Search backward
|
||||||
|
|
||||||
|
map ? start_search regex backward
|
||||||
|
|
||||||
|
#: Scroll to next search match
|
||||||
|
|
||||||
|
map . scroll_to next-match
|
||||||
|
map > scroll_to next-match
|
||||||
|
|
||||||
|
#: Scroll to previous search match
|
||||||
|
|
||||||
|
map , scroll_to prev-match
|
||||||
|
map < scroll_to prev-match
|
||||||
|
|
||||||
|
#: Search forward (no regex)
|
||||||
|
|
||||||
|
map f start_search substring forward
|
||||||
|
|
||||||
|
#: Search backward (no regex)
|
||||||
|
|
||||||
|
map b start_search substring backward
|
||||||
|
|
||||||
|
#: }}}
|
||||||
|
|
1528
home_external/.config/kitty/kitty.conf
Normal file
1528
home_external/.config/kitty/kitty.conf
Normal file
File diff suppressed because it is too large
Load Diff
70
home_external/.config/redshift.conf
Normal file
70
home_external/.config/redshift.conf
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
; Global settings for redshift
|
||||||
|
[redshift]
|
||||||
|
; Set the day and night screen temperatures
|
||||||
|
temp-day=6000
|
||||||
|
temp-night=3500
|
||||||
|
|
||||||
|
; Disable the smooth fade between temperatures when Redshift starts and stops.
|
||||||
|
; 0 will cause an immediate change between screen temperatures.
|
||||||
|
; 1 will gradually apply the new screen temperature over a couple of seconds.
|
||||||
|
fade=1
|
||||||
|
|
||||||
|
; Solar elevation thresholds.
|
||||||
|
; By default, Redshift will use the current elevation of the sun to determine
|
||||||
|
; whether it is daytime, night or in transition (dawn/dusk). When the sun is
|
||||||
|
; above the degrees specified with elevation-high it is considered daytime and
|
||||||
|
; below elevation-low it is considered night.
|
||||||
|
;elevation-high=3
|
||||||
|
;elevation-low=-6
|
||||||
|
|
||||||
|
; Custom dawn/dusk intervals.
|
||||||
|
; Instead of using the solar elevation, the time intervals of dawn and dusk
|
||||||
|
; can be specified manually. The times must be specified as HH:MM in 24-hour
|
||||||
|
; format.
|
||||||
|
;dawn-time=6:00-7:45
|
||||||
|
;dusk-time=18:35-20:15
|
||||||
|
|
||||||
|
; Set the screen brightness. Default is 1.0.
|
||||||
|
;brightness=0.9
|
||||||
|
; It is also possible to use different settings for day and night
|
||||||
|
; since version 1.8.
|
||||||
|
;brightness-day=0.7
|
||||||
|
;brightness-night=0.4
|
||||||
|
; Set the screen gamma (for all colors, or each color channel
|
||||||
|
; individually)
|
||||||
|
;gamma=0.8
|
||||||
|
;gamma=0.8:0.7:0.8
|
||||||
|
; This can also be set individually for day and night since
|
||||||
|
; version 1.10.
|
||||||
|
;gamma-day=0.8:0.7:0.8
|
||||||
|
;gamma-night=0.6
|
||||||
|
|
||||||
|
; Set the location-provider: 'geoclue2', 'manual'
|
||||||
|
; type 'redshift -l list' to see possible values.
|
||||||
|
; The location provider settings are in a different section.
|
||||||
|
location-provider=manual
|
||||||
|
|
||||||
|
; Set the adjustment-method: 'randr', 'vidmode'
|
||||||
|
; type 'redshift -m list' to see all possible values.
|
||||||
|
; 'randr' is the preferred method, 'vidmode' is an older API.
|
||||||
|
; but works in some cases when 'randr' does not.
|
||||||
|
; The adjustment method settings are in a different section.
|
||||||
|
adjustment-method=randr
|
||||||
|
|
||||||
|
; Configuration of the location-provider:
|
||||||
|
; type 'redshift -l PROVIDER:help' to see the settings.
|
||||||
|
; ex: 'redshift -l manual:help'
|
||||||
|
; Keep in mind that longitudes west of Greenwich (e.g. the Americas)
|
||||||
|
; are negative numbers.
|
||||||
|
[manual]
|
||||||
|
lat=49.5
|
||||||
|
lon=6.4
|
||||||
|
|
||||||
|
; Configuration of the adjustment-method
|
||||||
|
; type 'redshift -m METHOD:help' to see the settings.
|
||||||
|
; ex: 'redshift -m randr:help'
|
||||||
|
; In this example, randr is configured to adjust only screen 0.
|
||||||
|
; Note that the numbering starts from 0, so this is actually the first screen.
|
||||||
|
; If this option is not specified, Redshift will try to adjust _all_ screens.
|
||||||
|
[randr]
|
||||||
|
;screen=0
|
151
home_external/.config/rofi/config.rasi
Normal file
151
home_external/.config/rofi/config.rasi
Normal file
@ -0,0 +1,151 @@
|
|||||||
|
configuration {
|
||||||
|
modi: "window,windowcd,run,ssh,drun,combi";
|
||||||
|
/* font: "mono 12";*/
|
||||||
|
/* location: 0;*/
|
||||||
|
/* yoffset: 0;*/
|
||||||
|
/* xoffset: 0;*/
|
||||||
|
/* fixed-num-lines: true;*/
|
||||||
|
/* show-icons: false;*/
|
||||||
|
terminal: "kitty";
|
||||||
|
/* ssh-client: "ssh";*/
|
||||||
|
/* if using terminator, don't use "{terminal} -e" but "{terminal} -x"
|
||||||
|
if using kitty, omit -e or -x */
|
||||||
|
ssh-command: "{terminal} {ssh-client} {host} [-p {port}]";
|
||||||
|
/* run-command: "{cmd}";*/
|
||||||
|
/* run-list-command: "";*/
|
||||||
|
/* run-shell-command: "{terminal} -e {cmd}";*/
|
||||||
|
/* window-command: "wmctrl -i -R {window}";*/
|
||||||
|
/* window-match-fields: "all";*/
|
||||||
|
/* icon-theme: ;*/
|
||||||
|
/* drun-match-fields: "name,generic,exec,categories,keywords";*/
|
||||||
|
/* drun-categories: ;*/
|
||||||
|
/* drun-show-actions: false;*/
|
||||||
|
/* drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";*/
|
||||||
|
/* drun-url-launcher: "xdg-open";*/
|
||||||
|
disable-history: false;
|
||||||
|
/* ignored-prefixes: "";*/
|
||||||
|
sort: true;
|
||||||
|
/* sorting-method: "normal";*/
|
||||||
|
sorting-method: "fzf";
|
||||||
|
/* case-sensitive: false;*/
|
||||||
|
/* cycle: true;*/
|
||||||
|
/* sidebar-mode: false;*/
|
||||||
|
/* hover-select: false;*/
|
||||||
|
/* eh: 1;*/
|
||||||
|
/* auto-select: false;*/
|
||||||
|
/* parse-hosts: false;*/
|
||||||
|
/* parse-known-hosts: true;*/
|
||||||
|
/* combi-modi: "window,run";*/
|
||||||
|
/* matching: "normal";*/
|
||||||
|
/* tokenize: true;*/
|
||||||
|
/* m: "-5";*/
|
||||||
|
/* filter: ;*/
|
||||||
|
/* dpi: -1;*/
|
||||||
|
/* threads: 0;*/
|
||||||
|
/* scroll-method: 0;*/
|
||||||
|
/* window-format: "{w} {c} {t}";*/
|
||||||
|
/* click-to-exit: true;*/
|
||||||
|
/* theme: ;*/
|
||||||
|
/* max-history-size: 25;*/
|
||||||
|
/* combi-hide-mode-prefix: false;*/
|
||||||
|
/* matching-negate-char: '-' /* unsupported */;*/
|
||||||
|
/* cache-dir: ;*/
|
||||||
|
/* window-thumbnail: false;*/
|
||||||
|
/* drun-use-desktop-cache: false;*/
|
||||||
|
/* drun-reload-desktop-cache: false;*/
|
||||||
|
/* normalize-match: false;*/
|
||||||
|
/* steal-focus: false;*/
|
||||||
|
/* application-fallback-icon: ;*/
|
||||||
|
/* pid: "/run/user/1000/rofi.pid";*/
|
||||||
|
/* display-window: ;*/
|
||||||
|
/* display-windowcd: ;*/
|
||||||
|
/* display-run: ;*/
|
||||||
|
/* display-ssh: ;*/
|
||||||
|
/* display-drun: ;*/
|
||||||
|
/* display-combi: ;*/
|
||||||
|
/* display-keys: ;*/
|
||||||
|
/* display-filebrowser: ;*/
|
||||||
|
/* kb-primary-paste: "Control+V,Shift+Insert";*/
|
||||||
|
/* kb-secondary-paste: "Control+v,Insert";*/
|
||||||
|
/* kb-clear-line: "Control+w";*/
|
||||||
|
/* kb-move-front: "Control+a";*/
|
||||||
|
/* kb-move-end: "Control+e";*/
|
||||||
|
/* kb-move-word-back: "Alt+b,Control+Left";*/
|
||||||
|
/* kb-move-word-forward: "Alt+f,Control+Right";*/
|
||||||
|
/* kb-move-char-back: "Left,Control+b";*/
|
||||||
|
/* kb-move-char-forward: "Right,Control+f";*/
|
||||||
|
/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
|
||||||
|
/* kb-remove-word-forward: "Control+Alt+d";*/
|
||||||
|
/* kb-remove-char-forward: "Delete,Control+d";*/
|
||||||
|
/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
|
||||||
|
/* kb-remove-to-eol: "Control+k";*/
|
||||||
|
/* kb-remove-to-sol: "Control+u";*/
|
||||||
|
/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
|
||||||
|
/* kb-accept-custom: "Control+Return";*/
|
||||||
|
/* kb-accept-custom-alt: "Control+Shift+Return";*/
|
||||||
|
/* kb-accept-alt: "Shift+Return";*/
|
||||||
|
/* kb-delete-entry: "Shift+Delete";*/
|
||||||
|
/* kb-mode-next: "Shift+Right,Control+Tab";*/
|
||||||
|
/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
|
||||||
|
/* kb-mode-complete: "Control+l";*/
|
||||||
|
/* kb-row-left: "Control+Page_Up";*/
|
||||||
|
/* kb-row-right: "Control+Page_Down";*/
|
||||||
|
/* kb-row-up: "Up,Control+p,ISO_Left_Tab";*/
|
||||||
|
/* kb-row-down: "Down,Control+n";*/
|
||||||
|
/* kb-row-tab: "Tab";*/
|
||||||
|
/* kb-page-prev: "Page_Up";*/
|
||||||
|
/* kb-page-next: "Page_Down";*/
|
||||||
|
/* kb-row-first: "Home,KP_Home";*/
|
||||||
|
/* kb-row-last: "End,KP_End";*/
|
||||||
|
/* kb-row-select: "Control+space";*/
|
||||||
|
/* kb-screenshot: "Alt+S";*/
|
||||||
|
/* kb-ellipsize: "Alt+period";*/
|
||||||
|
/* kb-toggle-case-sensitivity: "grave,dead_grave";*/
|
||||||
|
/* kb-toggle-sort: "Alt+grave";*/
|
||||||
|
/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/
|
||||||
|
/* kb-custom-1: "Alt+1";*/
|
||||||
|
/* kb-custom-2: "Alt+2";*/
|
||||||
|
/* kb-custom-3: "Alt+3";*/
|
||||||
|
/* kb-custom-4: "Alt+4";*/
|
||||||
|
/* kb-custom-5: "Alt+5";*/
|
||||||
|
/* kb-custom-6: "Alt+6";*/
|
||||||
|
/* kb-custom-7: "Alt+7";*/
|
||||||
|
/* kb-custom-8: "Alt+8";*/
|
||||||
|
/* kb-custom-9: "Alt+9";*/
|
||||||
|
/* kb-custom-10: "Alt+0";*/
|
||||||
|
/* kb-custom-11: "Alt+exclam";*/
|
||||||
|
/* kb-custom-12: "Alt+at";*/
|
||||||
|
/* kb-custom-13: "Alt+numbersign";*/
|
||||||
|
/* kb-custom-14: "Alt+dollar";*/
|
||||||
|
/* kb-custom-15: "Alt+percent";*/
|
||||||
|
/* kb-custom-16: "Alt+dead_circumflex";*/
|
||||||
|
/* kb-custom-17: "Alt+ampersand";*/
|
||||||
|
/* kb-custom-18: "Alt+asterisk";*/
|
||||||
|
/* kb-custom-19: "Alt+parenleft";*/
|
||||||
|
/* kb-select-1: "Super+1";*/
|
||||||
|
/* kb-select-2: "Super+2";*/
|
||||||
|
/* kb-select-3: "Super+3";*/
|
||||||
|
/* kb-select-4: "Super+4";*/
|
||||||
|
/* kb-select-5: "Super+5";*/
|
||||||
|
/* kb-select-6: "Super+6";*/
|
||||||
|
/* kb-select-7: "Super+7";*/
|
||||||
|
/* kb-select-8: "Super+8";*/
|
||||||
|
/* kb-select-9: "Super+9";*/
|
||||||
|
/* kb-select-10: "Super+0";*/
|
||||||
|
/* ml-row-left: "ScrollLeft";*/
|
||||||
|
/* ml-row-right: "ScrollRight";*/
|
||||||
|
/* ml-row-up: "ScrollUp";*/
|
||||||
|
/* ml-row-down: "ScrollDown";*/
|
||||||
|
/* me-select-entry: "MousePrimary";*/
|
||||||
|
/* me-accept-entry: "MouseDPrimary";*/
|
||||||
|
/* me-accept-custom: "Control+MouseDPrimary";*/
|
||||||
|
timeout {
|
||||||
|
action: "kb-cancel";
|
||||||
|
delay: 0;
|
||||||
|
}
|
||||||
|
filebrowser {
|
||||||
|
directories-first: true;
|
||||||
|
sorting-method: "name";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@theme "/usr/share/rofi/themes/Arc-Dark.rasi"
|
146
home_external/.config/rofi/theme.rasi
Normal file
146
home_external/.config/rofi/theme.rasi
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
/**
|
||||||
|
* rofi -dump-theme output.
|
||||||
|
* Rofi version: 1.7.3
|
||||||
|
**/
|
||||||
|
* {
|
||||||
|
red: rgba ( 220, 50, 47, 100 % );
|
||||||
|
selected-active-foreground: rgba ( 249, 249, 249, 100 % );
|
||||||
|
lightfg: rgba ( 88, 104, 117, 100 % );
|
||||||
|
separatorcolor: rgba ( 29, 31, 33, 100 % );
|
||||||
|
urgent-foreground: rgba ( 204, 102, 102, 100 % );
|
||||||
|
alternate-urgent-background: rgba ( 75, 81, 96, 90 % );
|
||||||
|
lightbg: rgba ( 238, 232, 213, 100 % );
|
||||||
|
background-color: transparent;
|
||||||
|
border-color: rgba ( 124, 131, 137, 100 % );
|
||||||
|
normal-background: var(background);
|
||||||
|
selected-urgent-background: rgba ( 165, 66, 66, 100 % );
|
||||||
|
alternate-active-background: rgba ( 75, 81, 96, 89 % );
|
||||||
|
spacing: 2;
|
||||||
|
alternate-normal-foreground: var(foreground);
|
||||||
|
blue: rgba ( 38, 139, 210, 100 % );
|
||||||
|
urgent-background: rgba ( 29, 31, 33, 17 % );
|
||||||
|
selected-normal-foreground: rgba ( 249, 249, 249, 100 % );
|
||||||
|
active-foreground: rgba ( 101, 172, 255, 100 % );
|
||||||
|
background: rgba ( 45, 48, 59, 95 % );
|
||||||
|
selected-normal-background: rgba ( 64, 132, 214, 100 % );
|
||||||
|
selected-active-background: rgba ( 68, 145, 237, 100 % );
|
||||||
|
active-background: rgba ( 29, 31, 33, 17 % );
|
||||||
|
alternate-normal-background: rgba ( 64, 69, 82, 59 % );
|
||||||
|
foreground: rgba ( 196, 203, 212, 100 % );
|
||||||
|
selected-urgent-foreground: rgba ( 249, 249, 249, 100 % );
|
||||||
|
alternate-urgent-foreground: var(urgent-foreground);
|
||||||
|
normal-foreground: var(foreground);
|
||||||
|
alternate-active-foreground: var(active-foreground);
|
||||||
|
}
|
||||||
|
window {
|
||||||
|
padding: 5;
|
||||||
|
background-color: var(background);
|
||||||
|
border: 1;
|
||||||
|
}
|
||||||
|
mainbox {
|
||||||
|
padding: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
message {
|
||||||
|
padding: 1px ;
|
||||||
|
border-color: var(separatorcolor);
|
||||||
|
border: 2px 0px 0px ;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
text-color: var(foreground);
|
||||||
|
}
|
||||||
|
listview {
|
||||||
|
padding: 2px 0px 0px ;
|
||||||
|
scrollbar: true;
|
||||||
|
border-color: var(separatorcolor);
|
||||||
|
spacing: 2px ;
|
||||||
|
fixed-height: 0;
|
||||||
|
border: 2px 0px 0px ;
|
||||||
|
}
|
||||||
|
element {
|
||||||
|
padding: 1px ;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
element normal.normal {
|
||||||
|
background-color: var(normal-background);
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
element normal.urgent {
|
||||||
|
background-color: var(urgent-background);
|
||||||
|
text-color: var(urgent-foreground);
|
||||||
|
}
|
||||||
|
element normal.active {
|
||||||
|
background-color: var(active-background);
|
||||||
|
text-color: var(active-foreground);
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
background-color: var(selected-normal-background);
|
||||||
|
text-color: var(selected-normal-foreground);
|
||||||
|
}
|
||||||
|
element selected.urgent {
|
||||||
|
background-color: var(selected-urgent-background);
|
||||||
|
text-color: var(selected-urgent-foreground);
|
||||||
|
}
|
||||||
|
element selected.active {
|
||||||
|
background-color: var(selected-active-background);
|
||||||
|
text-color: var(selected-active-foreground);
|
||||||
|
}
|
||||||
|
element alternate.normal {
|
||||||
|
background-color: var(alternate-normal-background);
|
||||||
|
text-color: var(alternate-normal-foreground);
|
||||||
|
}
|
||||||
|
element alternate.urgent {
|
||||||
|
background-color: var(alternate-urgent-background);
|
||||||
|
text-color: var(alternate-urgent-foreground);
|
||||||
|
}
|
||||||
|
element alternate.active {
|
||||||
|
background-color: var(alternate-active-background);
|
||||||
|
text-color: var(alternate-active-foreground);
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
scrollbar {
|
||||||
|
width: 4px ;
|
||||||
|
padding: 0;
|
||||||
|
handle-width: 8px ;
|
||||||
|
border: 0;
|
||||||
|
handle-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
mode-switcher {
|
||||||
|
border-color: var(separatorcolor);
|
||||||
|
border: 2px 0px 0px ;
|
||||||
|
}
|
||||||
|
button {
|
||||||
|
spacing: 0;
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
button selected {
|
||||||
|
background-color: var(selected-normal-background);
|
||||||
|
text-color: var(selected-normal-foreground);
|
||||||
|
}
|
||||||
|
inputbar {
|
||||||
|
padding: 1px ;
|
||||||
|
spacing: 0;
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
children: [ "prompt","textbox-prompt-colon","entry","case-indicator" ];
|
||||||
|
}
|
||||||
|
case-indicator {
|
||||||
|
spacing: 0;
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
entry {
|
||||||
|
spacing: 0;
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
prompt {
|
||||||
|
spacing: 0;
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
textbox-prompt-colon {
|
||||||
|
margin: 0px 0.3000em 0.0000em 0.0000em ;
|
||||||
|
expand: false;
|
||||||
|
str: ":";
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
7
home_external/.local/share/applications/mount_edi.desktop
Executable file
7
home_external/.local/share/applications/mount_edi.desktop
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Mount EDI
|
||||||
|
Comment=Use for mounting EDI
|
||||||
|
Exec=/sync/scripts/mount_edi.sh
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
Categories=Network;
|
7
home_external/.local/share/applications/mount_garrus.desktop
Executable file
7
home_external/.local/share/applications/mount_garrus.desktop
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Mount Garrus
|
||||||
|
Comment=Use for mounting Garrus
|
||||||
|
Exec=/sync/scripts/mount_garrus.sh
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
Categories=Network;
|
7
home_external/.local/share/applications/unmount_edi.desktop
Executable file
7
home_external/.local/share/applications/unmount_edi.desktop
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Unmount EDI
|
||||||
|
Comment=Use for unmounting EDI
|
||||||
|
Exec=/sync/scripts/unmount_edi.sh
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
Categories=Network;
|
7
home_external/.local/share/applications/unmount_garrus.desktop
Executable file
7
home_external/.local/share/applications/unmount_garrus.desktop
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Unmount Garrus
|
||||||
|
Comment=Use for unmounting Garrus
|
||||||
|
Exec=/sync/scripts/unmount_garrus.sh
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
Categories=Network;
|
563
home_external/.local/share/fonts/Fira_Code_v6.2/README.txt
Normal file
563
home_external/.local/share/fonts/Fira_Code_v6.2/README.txt
Normal file
@ -0,0 +1,563 @@
|
|||||||
|
Installing
|
||||||
|
==========
|
||||||
|
|
||||||
|
Windows
|
||||||
|
-------
|
||||||
|
|
||||||
|
In the ttf folder, double-click each font file, click “Install font”; to install all at once, select all files, right-click, and choose “Install”
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
Use https://chocolatey.org:
|
||||||
|
|
||||||
|
choco install firacode
|
||||||
|
|
||||||
|
|
||||||
|
macOS
|
||||||
|
-----
|
||||||
|
|
||||||
|
In the downloaded TTF folder:
|
||||||
|
|
||||||
|
1. Select all font files
|
||||||
|
2. Right click and select `Open` (alternatively `Open With Font Book`)
|
||||||
|
3. Select "Install Font"
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
Use http://brew.sh:
|
||||||
|
|
||||||
|
`brew tap homebrew/cask-fonts`
|
||||||
|
`brew install font-fira-code`
|
||||||
|
|
||||||
|
|
||||||
|
Ubuntu Zesty (17.04), Debian Stretch (9) or newer
|
||||||
|
-------------------------------------------------
|
||||||
|
|
||||||
|
1. Make sure that the `universe` (for Ubuntu) or `contrib` (for Debian) repository is enabled (see https://askubuntu.com/questions/148638/how-do-i-enable-the-universe-repository or https://wiki.debian.org/SourcesList#Component)
|
||||||
|
2. Install `fonts-firacode` package either by executing `sudo apt install fonts-firacode` in the terminal or via GUI tool (like “Software Center”)
|
||||||
|
|
||||||
|
|
||||||
|
Arch Linux
|
||||||
|
----------
|
||||||
|
|
||||||
|
Fira Code package is available in the official repository: https://www.archlinux.org/packages/community/any/ttf-fira-code/.
|
||||||
|
|
||||||
|
Variant of Fira Code package is available in the AUR: https://aur.archlinux.org/packages/otf-fira-code-git/.
|
||||||
|
|
||||||
|
|
||||||
|
Gentoo
|
||||||
|
------
|
||||||
|
|
||||||
|
emerge -av media-fonts/fira-code
|
||||||
|
|
||||||
|
|
||||||
|
Fedora
|
||||||
|
------
|
||||||
|
|
||||||
|
To install, perform the following commands:
|
||||||
|
|
||||||
|
dnf install fira-code-fonts
|
||||||
|
|
||||||
|
|
||||||
|
Solus
|
||||||
|
-----
|
||||||
|
|
||||||
|
Fira Code package is available in the official repository: `font-firacode-ttf` and `font-firacode-otf`.
|
||||||
|
They can be installed by running:
|
||||||
|
|
||||||
|
sudo eopkg install font-firacode-ttf font-firacode-otf
|
||||||
|
|
||||||
|
|
||||||
|
Void linux
|
||||||
|
----------
|
||||||
|
|
||||||
|
xbps-install font-firacode
|
||||||
|
|
||||||
|
|
||||||
|
Linux Manual Installation
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
With most desktop-oriented distributions, double-clicking each font file in the ttf folder and selecting “Install font” should be enough. If it isn’t, create and run `download_and_install.sh` script:
|
||||||
|
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
fonts_dir="${HOME}/.local/share/fonts"
|
||||||
|
if [ ! -d "${fonts_dir}" ]; then
|
||||||
|
echo "mkdir -p $fonts_dir"
|
||||||
|
mkdir -p "${fonts_dir}"
|
||||||
|
else
|
||||||
|
echo "Found fonts dir $fonts_dir"
|
||||||
|
fi
|
||||||
|
|
||||||
|
for type in Bold Light Medium Regular Retina; do
|
||||||
|
file_path="${HOME}/.local/share/fonts/FiraCode-${type}.ttf"
|
||||||
|
file_url="https://github.com/tonsky/FiraCode/blob/master/distr/ttf/FiraCode-${type}.ttf?raw=true"
|
||||||
|
if [ ! -e "${file_path}" ]; then
|
||||||
|
echo "wget -O $file_path $file_url"
|
||||||
|
wget -O "${file_path}" "${file_url}"
|
||||||
|
else
|
||||||
|
echo "Found existing file $file_path"
|
||||||
|
fi;
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "fc-cache -f"
|
||||||
|
fc-cache -f
|
||||||
|
|
||||||
|
More details: https://github.com/tonsky/FiraCode/issues/4
|
||||||
|
|
||||||
|
|
||||||
|
FreeBSD
|
||||||
|
-------
|
||||||
|
|
||||||
|
Using pkg(8):
|
||||||
|
|
||||||
|
pkg install firacode
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
Using ports:
|
||||||
|
|
||||||
|
cd /usr/ports/x11-fonts/firacode && make install clean
|
||||||
|
|
||||||
|
|
||||||
|
Enabling ligatures
|
||||||
|
==================
|
||||||
|
|
||||||
|
Atom
|
||||||
|
----
|
||||||
|
|
||||||
|
To change your font to Fira Code, open Atom's preferences (`cmd + ,` on a Mac, `ctrl + ,` on PC), make sure the "Settings" tab is selected, or the "Editor" in Atom 1.10+, and scroll down to "Editor Settings". In the "Font Family" field, enter `Fira Code`.
|
||||||
|
|
||||||
|
If you wish to specify a font weight, for example, Light, use `Fira Code Light` as a font name (Windows) or `FiraCode-Light` (macOS).
|
||||||
|
|
||||||
|
Ligatures are enabled by default in Atom 1.9 and above.
|
||||||
|
|
||||||
|
|
||||||
|
VS Code
|
||||||
|
-------
|
||||||
|
|
||||||
|
To open the settings editor, first from the File menu choose Preferences, Settings or use keyboard shortcut `Ctrl + ,` (Windows) or `Cmd + ,` (macOS).
|
||||||
|
|
||||||
|
To enable FiraCode in the settings editor, under "Commonly Used", expand the "Text Editor" settings and then click on "Font". In the "Font Family" input box type `Fira Code`, replacing any content. Tick the check box "Enables/Disables font ligatures" under "Font Ligatures" to enable the special ligatures.
|
||||||
|
|
||||||
|
If you wish to specify a font weight, for example, Light, use `Fira Code Light` as a font name (Windows) or `FiraCode-Light` (macOS).
|
||||||
|
|
||||||
|
|
||||||
|
IntelliJ products
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
1. Enable in Settings → Editor → Font → Enable Font Ligatures
|
||||||
|
2. Select `Fira Code` as "Primary font" under Settings → Editor → Font
|
||||||
|
|
||||||
|
Additionally, if a Color Scheme is selected:
|
||||||
|
|
||||||
|
3. Enable in Settings → Editor → Color Scheme → Color Scheme Font → Enable Font Ligatures
|
||||||
|
4. Select Fira Code as "Primary font" under Settings → Editor → Color Scheme → Color Scheme Font
|
||||||
|
|
||||||
|
|
||||||
|
BBEdit, TextWrangler
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
Run in your terminal:
|
||||||
|
|
||||||
|
defaults write com.barebones.bbedit "EnableFontLigatures_Fira Code" -bool YES
|
||||||
|
|
||||||
|
Source: https://www.barebones.com/support/bbedit/ExpertPreferences.html
|
||||||
|
|
||||||
|
|
||||||
|
Brackets
|
||||||
|
--------
|
||||||
|
|
||||||
|
1. From the `View` menu choose `Themes....`
|
||||||
|
2. Paste `'Fira Code'`, at the beginning of `Font Family`
|
||||||
|
|
||||||
|
|
||||||
|
Emacs
|
||||||
|
-----
|
||||||
|
|
||||||
|
There are a few options when it comes down to using ligatures in
|
||||||
|
Emacs. They are listed in order of preferred to less-preferred. Pick one!
|
||||||
|
|
||||||
|
1. Using composition mode in Emacs Mac port
|
||||||
|
|
||||||
|
If you're using the latest Mac port of Emacs (https://bitbucket.org/mituharu/emacs-mac by Mitsuharu Yamamoto) for macOS, you can use:
|
||||||
|
|
||||||
|
(mac-auto-operator-composition-mode)
|
||||||
|
|
||||||
|
This is generally the easiest solution, but can only be used on macOS.
|
||||||
|
|
||||||
|
2. Using prettify-symbols
|
||||||
|
|
||||||
|
These instructions are pieced together by https://github.com/Triavanicus, taking some pieces from https://github.com/minad/hasklig-mode.
|
||||||
|
|
||||||
|
This method requires you to install the Fira Code Symbol font, made by https://github.com/siegebell:
|
||||||
|
https://github.com/tonsky/FiraCode/issues/211#issuecomment-239058632
|
||||||
|
|
||||||
|
(defun fira-code-mode--make-alist (list)
|
||||||
|
"Generate prettify-symbols alist from LIST."
|
||||||
|
(let ((idx -1))
|
||||||
|
(mapcar
|
||||||
|
(lambda (s)
|
||||||
|
(setq idx (1+ idx))
|
||||||
|
(let* ((code (+ #Xe100 idx))
|
||||||
|
(width (string-width s))
|
||||||
|
(prefix ())
|
||||||
|
(suffix '(?\s (Br . Br)))
|
||||||
|
(n 1))
|
||||||
|
(while (< n width)
|
||||||
|
(setq prefix (append prefix '(?\s (Br . Bl))))
|
||||||
|
(setq n (1+ n)))
|
||||||
|
(cons s (append prefix suffix (list (decode-char 'ucs code))))))
|
||||||
|
list)))
|
||||||
|
|
||||||
|
(defconst fira-code-mode--ligatures
|
||||||
|
'("www" "**" "***" "**/" "*>" "*/" "\\\\" "\\\\\\"
|
||||||
|
"{-" "[]" "::" ":::" ":=" "!!" "!=" "!==" "-}"
|
||||||
|
"--" "---" "-->" "->" "->>" "-<" "-<<" "-~"
|
||||||
|
"#{" "#[" "##" "###" "####" "#(" "#?" "#_" "#_("
|
||||||
|
".-" ".=" ".." "..<" "..." "?=" "??" ";;" "/*"
|
||||||
|
"/**" "/=" "/==" "/>" "//" "///" "&&" "||" "||="
|
||||||
|
"|=" "|>" "^=" "$>" "++" "+++" "+>" "=:=" "=="
|
||||||
|
"===" "==>" "=>" "=>>" "<=" "=<<" "=/=" ">-" ">="
|
||||||
|
">=>" ">>" ">>-" ">>=" ">>>" "<*" "<*>" "<|" "<|>"
|
||||||
|
"<$" "<$>" "<!--" "<-" "<--" "<->" "<+" "<+>" "<="
|
||||||
|
"<==" "<=>" "<=<" "<>" "<<" "<<-" "<<=" "<<<" "<~"
|
||||||
|
"<~~" "</" "</>" "~@" "~-" "~=" "~>" "~~" "~~>" "%%"
|
||||||
|
"x" ":" "+" "+" "*"))
|
||||||
|
|
||||||
|
(defvar fira-code-mode--old-prettify-alist)
|
||||||
|
|
||||||
|
(defun fira-code-mode--enable ()
|
||||||
|
"Enable Fira Code ligatures in current buffer."
|
||||||
|
(setq-local fira-code-mode--old-prettify-alist prettify-symbols-alist)
|
||||||
|
(setq-local prettify-symbols-alist (append (fira-code-mode--make-alist fira-code-mode--ligatures) fira-code-mode--old-prettify-alist))
|
||||||
|
(prettify-symbols-mode t))
|
||||||
|
|
||||||
|
(defun fira-code-mode--disable ()
|
||||||
|
"Disable Fira Code ligatures in current buffer."
|
||||||
|
(setq-local prettify-symbols-alist fira-code-mode--old-prettify-alist)
|
||||||
|
(prettify-symbols-mode -1))
|
||||||
|
|
||||||
|
(define-minor-mode fira-code-mode
|
||||||
|
"Fira Code ligatures minor mode"
|
||||||
|
:lighter " Fira Code"
|
||||||
|
(setq-local prettify-symbols-unprettify-at-point 'right-edge)
|
||||||
|
(if fira-code-mode
|
||||||
|
(fira-code-mode--enable)
|
||||||
|
(fira-code-mode--disable)))
|
||||||
|
|
||||||
|
(defun fira-code-mode--setup ()
|
||||||
|
"Setup Fira Code Symbols"
|
||||||
|
(set-fontset-font t '(#Xe100 . #Xe16f) "Fira Code Symbol"))
|
||||||
|
|
||||||
|
(provide 'fira-code-mode)
|
||||||
|
|
||||||
|
Alternative instructions: https://github.com/Profpatsch/blog/blob/master/posts/ligature-emulation-in-emacs/post.md#appendix-b-update-1-firacode-integration
|
||||||
|
|
||||||
|
3. Using composition char table
|
||||||
|
|
||||||
|
Thanks to https://github.com/seanfarley for putting this together; extended by https://github.com/jrblevin.
|
||||||
|
|
||||||
|
Put this lisp in your .emacs:
|
||||||
|
|
||||||
|
(when (window-system)
|
||||||
|
(set-frame-font "Fira Code"))
|
||||||
|
(let ((alist '((33 . ".\\(?:\\(?:==\\|!!\\)\\|[!=]\\)")
|
||||||
|
(35 . ".\\(?:###\\|##\\|_(\\|[#(?[_{]\\)")
|
||||||
|
(36 . ".\\(?:>\\)")
|
||||||
|
(37 . ".\\(?:\\(?:%%\\)\\|%\\)")
|
||||||
|
(38 . ".\\(?:\\(?:&&\\)\\|&\\)")
|
||||||
|
(42 . ".\\(?:\\(?:\\*\\*/\\)\\|\\(?:\\*[*/]\\)\\|[*/>]\\)")
|
||||||
|
(43 . ".\\(?:\\(?:\\+\\+\\)\\|[+>]\\)")
|
||||||
|
(45 . ".\\(?:\\(?:-[>-]\\|<<\\|>>\\)\\|[<>}~-]\\)")
|
||||||
|
(46 . ".\\(?:\\(?:\\.[.<]\\)\\|[.=-]\\)")
|
||||||
|
(47 . ".\\(?:\\(?:\\*\\*\\|//\\|==\\)\\|[*/=>]\\)")
|
||||||
|
(48 . ".\\(?:x[a-zA-Z]\\)")
|
||||||
|
(58 . ".\\(?:::\\|[:=]\\)")
|
||||||
|
(59 . ".\\(?:;;\\|;\\)")
|
||||||
|
(60 . ".\\(?:\\(?:!--\\)\\|\\(?:~~\\|->\\|\\$>\\|\\*>\\|\\+>\\|--\\|<[<=-]\\|=[<=>]\\||>\\)\\|[*$+~/<=>|-]\\)")
|
||||||
|
(61 . ".\\(?:\\(?:/=\\|:=\\|<<\\|=[=>]\\|>>\\)\\|[<=>~]\\)")
|
||||||
|
(62 . ".\\(?:\\(?:=>\\|>[=>-]\\)\\|[=>-]\\)")
|
||||||
|
(63 . ".\\(?:\\(\\?\\?\\)\\|[:=?]\\)")
|
||||||
|
(91 . ".\\(?:]\\)")
|
||||||
|
(92 . ".\\(?:\\(?:\\\\\\\\\\)\\|\\\\\\)")
|
||||||
|
(94 . ".\\(?:=\\)")
|
||||||
|
(119 . ".\\(?:ww\\)")
|
||||||
|
(123 . ".\\(?:-\\)")
|
||||||
|
(124 . ".\\(?:\\(?:|[=|]\\)\\|[=>|]\\)")
|
||||||
|
(126 . ".\\(?:~>\\|~~\\|[>=@~-]\\)")
|
||||||
|
)
|
||||||
|
))
|
||||||
|
(dolist (char-regexp alist)
|
||||||
|
(set-char-table-range composition-function-table (car char-regexp)
|
||||||
|
`([,(cdr char-regexp) 0 font-shape-gstring]))))
|
||||||
|
|
||||||
|
**Note!** If you get `error in process filter: Attempt to shape unibyte text`, check out https://github.com/tonsky/FiraCode/issues/42. Emacs Cider users may avoid this issue by commenting the following line from the above config:
|
||||||
|
|
||||||
|
;; (46 . ".\\(?:\\(?:\\.[.<]\\)\\|[.=-]\\)")
|
||||||
|
|
||||||
|
Char `45` is also known to have issues in macOS Mojave.
|
||||||
|
|
||||||
|
If you are having problems with helm you can disable ligatures in helm:
|
||||||
|
|
||||||
|
(add-hook 'helm-major-mode-hook
|
||||||
|
(lambda ()
|
||||||
|
(setq auto-composition-mode nil)))
|
||||||
|
|
||||||
|
4. Using font-lock keywords
|
||||||
|
|
||||||
|
If none of the above worked, you can try this method.
|
||||||
|
|
||||||
|
This method requires you to install the Fira Code Symbol font, made by https://github.com/siegebell:
|
||||||
|
https://github.com/tonsky/FiraCode/issues/211#issuecomment-239058632
|
||||||
|
|
||||||
|
;;; Fira code
|
||||||
|
;; This works when using emacs --daemon + emacsclient
|
||||||
|
(add-hook 'after-make-frame-functions (lambda (frame) (set-fontset-font t '(#Xe100 . #Xe16f) "Fira Code Symbol")))
|
||||||
|
;; This works when using emacs without server/client
|
||||||
|
(set-fontset-font t '(#Xe100 . #Xe16f) "Fira Code Symbol")
|
||||||
|
;; I haven't found one statement that makes both of the above situations work, so I use both for now
|
||||||
|
|
||||||
|
(defconst fira-code-font-lock-keywords-alist
|
||||||
|
(mapcar (lambda (regex-char-pair)
|
||||||
|
`(,(car regex-char-pair)
|
||||||
|
(0 (prog1 ()
|
||||||
|
(compose-region (match-beginning 1)
|
||||||
|
(match-end 1)
|
||||||
|
;; The first argument to concat is a string containing a literal tab
|
||||||
|
,(concat " " (list (decode-char 'ucs (cadr regex-char-pair)))))))))
|
||||||
|
'(("\\(www\\)" #Xe100)
|
||||||
|
("[^/]\\(\\*\\*\\)[^/]" #Xe101)
|
||||||
|
("\\(\\*\\*\\*\\)" #Xe102)
|
||||||
|
("\\(\\*\\*/\\)" #Xe103)
|
||||||
|
("\\(\\*>\\)" #Xe104)
|
||||||
|
("[^*]\\(\\*/\\)" #Xe105)
|
||||||
|
("\\(\\\\\\\\\\)" #Xe106)
|
||||||
|
("\\(\\\\\\\\\\\\\\)" #Xe107)
|
||||||
|
("\\({-\\)" #Xe108)
|
||||||
|
("\\(\\[\\]\\)" #Xe109)
|
||||||
|
("\\(::\\)" #Xe10a)
|
||||||
|
("\\(:::\\)" #Xe10b)
|
||||||
|
("[^=]\\(:=\\)" #Xe10c)
|
||||||
|
("\\(!!\\)" #Xe10d)
|
||||||
|
("\\(!=\\)" #Xe10e)
|
||||||
|
("\\(!==\\)" #Xe10f)
|
||||||
|
("\\(-}\\)" #Xe110)
|
||||||
|
("\\(--\\)" #Xe111)
|
||||||
|
("\\(---\\)" #Xe112)
|
||||||
|
("\\(-->\\)" #Xe113)
|
||||||
|
("[^-]\\(->\\)" #Xe114)
|
||||||
|
("\\(->>\\)" #Xe115)
|
||||||
|
("\\(-<\\)" #Xe116)
|
||||||
|
("\\(-<<\\)" #Xe117)
|
||||||
|
("\\(-~\\)" #Xe118)
|
||||||
|
("\\(#{\\)" #Xe119)
|
||||||
|
("\\(#\\[\\)" #Xe11a)
|
||||||
|
("\\(##\\)" #Xe11b)
|
||||||
|
("\\(###\\)" #Xe11c)
|
||||||
|
("\\(####\\)" #Xe11d)
|
||||||
|
("\\(#(\\)" #Xe11e)
|
||||||
|
("\\(#\\?\\)" #Xe11f)
|
||||||
|
("\\(#_\\)" #Xe120)
|
||||||
|
("\\(#_(\\)" #Xe121)
|
||||||
|
("\\(\\.-\\)" #Xe122)
|
||||||
|
("\\(\\.=\\)" #Xe123)
|
||||||
|
("\\(\\.\\.\\)" #Xe124)
|
||||||
|
("\\(\\.\\.<\\)" #Xe125)
|
||||||
|
("\\(\\.\\.\\.\\)" #Xe126)
|
||||||
|
("\\(\\?=\\)" #Xe127)
|
||||||
|
("\\(\\?\\?\\)" #Xe128)
|
||||||
|
("\\(;;\\)" #Xe129)
|
||||||
|
("\\(/\\*\\)" #Xe12a)
|
||||||
|
("\\(/\\*\\*\\)" #Xe12b)
|
||||||
|
("\\(/=\\)" #Xe12c)
|
||||||
|
("\\(/==\\)" #Xe12d)
|
||||||
|
("\\(/>\\)" #Xe12e)
|
||||||
|
("\\(//\\)" #Xe12f)
|
||||||
|
("\\(///\\)" #Xe130)
|
||||||
|
("\\(&&\\)" #Xe131)
|
||||||
|
("\\(||\\)" #Xe132)
|
||||||
|
("\\(||=\\)" #Xe133)
|
||||||
|
("[^|]\\(|=\\)" #Xe134)
|
||||||
|
("\\(|>\\)" #Xe135)
|
||||||
|
("\\(\\^=\\)" #Xe136)
|
||||||
|
("\\(\\$>\\)" #Xe137)
|
||||||
|
("\\(\\+\\+\\)" #Xe138)
|
||||||
|
("\\(\\+\\+\\+\\)" #Xe139)
|
||||||
|
("\\(\\+>\\)" #Xe13a)
|
||||||
|
("\\(=:=\\)" #Xe13b)
|
||||||
|
("[^!/]\\(==\\)[^>]" #Xe13c)
|
||||||
|
("\\(===\\)" #Xe13d)
|
||||||
|
("\\(==>\\)" #Xe13e)
|
||||||
|
("[^=]\\(=>\\)" #Xe13f)
|
||||||
|
("\\(=>>\\)" #Xe140)
|
||||||
|
("\\(<=\\)" #Xe141)
|
||||||
|
("\\(=<<\\)" #Xe142)
|
||||||
|
("\\(=/=\\)" #Xe143)
|
||||||
|
("\\(>-\\)" #Xe144)
|
||||||
|
("\\(>=\\)" #Xe145)
|
||||||
|
("\\(>=>\\)" #Xe146)
|
||||||
|
("[^-=]\\(>>\\)" #Xe147)
|
||||||
|
("\\(>>-\\)" #Xe148)
|
||||||
|
("\\(>>=\\)" #Xe149)
|
||||||
|
("\\(>>>\\)" #Xe14a)
|
||||||
|
("\\(<\\*\\)" #Xe14b)
|
||||||
|
("\\(<\\*>\\)" #Xe14c)
|
||||||
|
("\\(<|\\)" #Xe14d)
|
||||||
|
("\\(<|>\\)" #Xe14e)
|
||||||
|
("\\(<\\$\\)" #Xe14f)
|
||||||
|
("\\(<\\$>\\)" #Xe150)
|
||||||
|
("\\(<!--\\)" #Xe151)
|
||||||
|
("\\(<-\\)" #Xe152)
|
||||||
|
("\\(<--\\)" #Xe153)
|
||||||
|
("\\(<->\\)" #Xe154)
|
||||||
|
("\\(<\\+\\)" #Xe155)
|
||||||
|
("\\(<\\+>\\)" #Xe156)
|
||||||
|
("\\(<=\\)" #Xe157)
|
||||||
|
("\\(<==\\)" #Xe158)
|
||||||
|
("\\(<=>\\)" #Xe159)
|
||||||
|
("\\(<=<\\)" #Xe15a)
|
||||||
|
("\\(<>\\)" #Xe15b)
|
||||||
|
("[^-=]\\(<<\\)" #Xe15c)
|
||||||
|
("\\(<<-\\)" #Xe15d)
|
||||||
|
("\\(<<=\\)" #Xe15e)
|
||||||
|
("\\(<<<\\)" #Xe15f)
|
||||||
|
("\\(<~\\)" #Xe160)
|
||||||
|
("\\(<~~\\)" #Xe161)
|
||||||
|
("\\(</\\)" #Xe162)
|
||||||
|
("\\(</>\\)" #Xe163)
|
||||||
|
("\\(~@\\)" #Xe164)
|
||||||
|
("\\(~-\\)" #Xe165)
|
||||||
|
("\\(~=\\)" #Xe166)
|
||||||
|
("\\(~>\\)" #Xe167)
|
||||||
|
("[^<]\\(~~\\)" #Xe168)
|
||||||
|
("\\(~~>\\)" #Xe169)
|
||||||
|
("\\(%%\\)" #Xe16a)
|
||||||
|
("[0\[]\\(x\\)" #Xe16b)
|
||||||
|
("[^:=]\\(:\\)[^:=]" #Xe16c)
|
||||||
|
("[^\\+<>]\\(\\+\\)[^\\+<>]" #Xe16d)
|
||||||
|
("[^\\*/<>]\\(\\*\\)[^\\*/<>]" #Xe16f))))
|
||||||
|
|
||||||
|
(defun add-fira-code-symbol-keywords ()
|
||||||
|
(font-lock-add-keywords nil fira-code-font-lock-keywords-alist))
|
||||||
|
|
||||||
|
(add-hook 'prog-mode-hook
|
||||||
|
#'add-fira-code-symbol-keywords)
|
||||||
|
|
||||||
|
On some systems, `==` will appear incorrectly as a blank space in certain modes unless you add the following lines to your init file:
|
||||||
|
|
||||||
|
(set-language-environment "UTF-8")
|
||||||
|
(set-default-coding-systems 'utf-8)
|
||||||
|
|
||||||
|
|
||||||
|
GoormIDE
|
||||||
|
--------
|
||||||
|
|
||||||
|
In a workspace:
|
||||||
|
|
||||||
|
1. Click goormIDE, then Preferences.
|
||||||
|
2. Go to Theme, then focus Custom Theme CSS.
|
||||||
|
3. Copy & paste the following:
|
||||||
|
|
||||||
|
@font-face{
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
src: url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/eot/FiraCode-Regular.eot') format('embedded-opentype'),
|
||||||
|
url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/woff2/FiraCode-Regular.woff2') format('woff2'),
|
||||||
|
url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/woff/FiraCode-Regular.woff') format('woff'),
|
||||||
|
url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/ttf/FiraCode-Regular.ttf') format('truetype');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.editor_container pre {
|
||||||
|
-webkit-font-feature-settings: "liga" on, "calt" on;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
text-rendering: optimizeLegibility;
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
}
|
||||||
|
|
||||||
|
4. Click Aplly or OK
|
||||||
|
5. Happy coding!
|
||||||
|
|
||||||
|
|
||||||
|
Cloud9
|
||||||
|
------
|
||||||
|
|
||||||
|
In a workspace:
|
||||||
|
|
||||||
|
1. Click Cloud9, then Preferences (or use keyboard shortcut CTRL + ,)
|
||||||
|
2. Go to Themes, then click on You can also style Cloud9 by editing your stylesheet (this will open a blank styles.css file in the C9 editor)
|
||||||
|
3. Copy & paste the following:
|
||||||
|
|
||||||
|
@font-face{
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
src: url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/eot/FiraCode-Regular.eot') format('embedded-opentype'),
|
||||||
|
url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/woff2/FiraCode-Regular.woff2') format('woff2'),
|
||||||
|
url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/woff/FiraCode-Regular.woff') format('woff'),
|
||||||
|
url('https://raw.githubusercontent.com/tonsky/FiraCode/master/distr/ttf/FiraCode-Regular.ttf') format('truetype');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ace_editor{
|
||||||
|
-webkit-font-feature-settings: "liga" on, "calt" on;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
text-rendering: optimizeLegibility;
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
}
|
||||||
|
|
||||||
|
4. Back in Preferences tab, click on User Settings, then click on Code Editor (Ace)
|
||||||
|
5. In Font Family field, enter Fira Code
|
||||||
|
6. Optionally, repeat step 5 for Preferences > User Settings > Terminal, if you want Fira Code font in C9 terminal.
|
||||||
|
|
||||||
|
|
||||||
|
MacVim
|
||||||
|
------
|
||||||
|
|
||||||
|
Add this to ~/.gvimrc:
|
||||||
|
|
||||||
|
set macligatures
|
||||||
|
set guifont=Fira\ Code:h12
|
||||||
|
|
||||||
|
MacVim supports ligatures starting from version 7.4.
|
||||||
|
|
||||||
|
|
||||||
|
RStudio
|
||||||
|
-------
|
||||||
|
|
||||||
|
In RStudio:
|
||||||
|
|
||||||
|
1. Go to Tools > Global Options > Appearance
|
||||||
|
2. Select "Fira Code" as Editor Font. In older versions of RStudio, check "Use Ligatures".
|
||||||
|
3. Hit "OK" and enjoy
|
||||||
|
|
||||||
|
|
||||||
|
Sublime Text
|
||||||
|
------------
|
||||||
|
|
||||||
|
Preferences --> Settings
|
||||||
|
|
||||||
|
Add before "ignored_packages":
|
||||||
|
|
||||||
|
"font_face": "Fira Code",
|
||||||
|
"font_options": ["subpixel_antialias"],
|
||||||
|
|
||||||
|
If you want enable antialias, add in font_options: "gray_antialias"
|
||||||
|
|
||||||
|
|
||||||
|
Visual Studio
|
||||||
|
-------------
|
||||||
|
|
||||||
|
1. Launch Visual Studio (2015 or later).
|
||||||
|
2. Launch the Options dialog by opening the "Tools" menu and selecting "Options".
|
||||||
|
3. In the Options dialog, under the "Environment" category, you'll find "Fonts and Colors". Click on that. You'll see a combo-box on the right hand side of the dialog labelled "Font". Select "Fira Code" from that combo-box.
|
||||||
|
4. Click "OK" to dismiss.
|
||||||
|
5. Restart Visual Studio.
|
||||||
|
|
||||||
|
Now, most FiraCode ligatures will work. A notable exception is the hyphen-based ligatures (e.g. the C++ dereference '->'). See https://github.com/tonsky/FiraCode/issues/422 for details.
|
||||||
|
|
||||||
|
|
||||||
|
Troubleshooting
|
||||||
|
===============
|
||||||
|
|
||||||
|
See https://github.com/tonsky/FiraCode/wiki/Troubleshooting
|
@ -0,0 +1,48 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
src: url('woff2/FiraCode-Light.woff2') format('woff2'),
|
||||||
|
url("woff/FiraCode-Light.woff") format("woff");
|
||||||
|
font-weight: 300;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
src: url('woff2/FiraCode-Regular.woff2') format('woff2'),
|
||||||
|
url("woff/FiraCode-Regular.woff") format("woff");
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
src: url('woff2/FiraCode-Medium.woff2') format('woff2'),
|
||||||
|
url("woff/FiraCode-Medium.woff") format("woff");
|
||||||
|
font-weight: 500;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
src: url('woff2/FiraCode-SemiBold.woff2') format('woff2'),
|
||||||
|
url("woff/FiraCode-SemiBold.woff") format("woff");
|
||||||
|
font-weight: 600;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Fira Code';
|
||||||
|
src: url('woff2/FiraCode-Bold.woff2') format('woff2'),
|
||||||
|
url("woff/FiraCode-Bold.woff") format("woff");
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Fira Code VF';
|
||||||
|
src: url('woff2/FiraCode-VF.woff2') format('woff2-variations'),
|
||||||
|
url('woff/FiraCode-VF.woff') format('woff-variations');
|
||||||
|
/* font-weight requires a range: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide#Using_a_variable_font_font-face_changes */
|
||||||
|
font-weight: 300 700;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
@ -0,0 +1,95 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||||
|
<title>Fira Code Specimen</title>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="fira_code.css">
|
||||||
|
<style>
|
||||||
|
body { font: 14px/1.5em "Fira Code"; }
|
||||||
|
.code {
|
||||||
|
font-feature-settings: "calt" 1; /* Enable ligatures for IE 10+, Edge */
|
||||||
|
text-rendering: optimizeLegibility; /* Force ligatures for Webkit, Blink, Gecko */
|
||||||
|
width: 30em;
|
||||||
|
margin: 5em auto;
|
||||||
|
white-space: pre-wrap;
|
||||||
|
word-break: break-all;
|
||||||
|
}
|
||||||
|
.light { font-weight: 300; }
|
||||||
|
.regular { font-weight: 400; }
|
||||||
|
.medium { font-weight: 500; }
|
||||||
|
.semibold { font-weight: 600; }
|
||||||
|
.bold { font-weight: 700; }
|
||||||
|
.variable { font-family: 'Fira Code VF'; font-variation-settings: 'wght' 400; }
|
||||||
|
i { font-style: normal; color: #c33; }
|
||||||
|
b { font-weight: inherit; color: #c33; }
|
||||||
|
</style>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function onWeightChange(weight) {
|
||||||
|
// code_variable.style['font-weight'] = weight;
|
||||||
|
code_variable.style['font-variation-settings'] = "'wght' " + weight;
|
||||||
|
span_wght.innerText = weight;
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="code light"><b># Fira Code Light</b>
|
||||||
|
|
||||||
|
take = (n, [x, <i>...</i>xs]:list) <i>--></i>
|
||||||
|
| n <i><=</i> 0 <i>=></i> []
|
||||||
|
| empty list <i>=></i> []
|
||||||
|
| otherwise <i>=></i> [x] <i>++</i> take n-1, xs
|
||||||
|
|
||||||
|
last3 = reverse <i>>></i> take 3 <i>>></i> reverse</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="code regular"><b># Fira Code Regular</b>
|
||||||
|
|
||||||
|
take = (n, [x, <i>...</i>xs]:list) <i>--></i>
|
||||||
|
| n <i><=</i> 0 <i>=></i> []
|
||||||
|
| empty list <i>=></i> []
|
||||||
|
| otherwise <i>=></i> [x] <i>++</i> take n-1, xs
|
||||||
|
|
||||||
|
last3 = reverse <i>>></i> take 3 <i>>></i> reverse</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="code medium"><b># Fira Code Medium</b>
|
||||||
|
|
||||||
|
take = (n, [x, <i>...</i>xs]:list) <i>--></i>
|
||||||
|
| n <i><=</i> 0 <i>=></i> []
|
||||||
|
| empty list <i>=></i> []
|
||||||
|
| otherwise <i>=></i> [x] <i>++</i> take n-1, xs
|
||||||
|
|
||||||
|
last3 = reverse <i>>></i> take 3 <i>>></i> reverse</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="code semibold"><b># Fira Code SemiBold</b>
|
||||||
|
|
||||||
|
take = (n, [x, <i>...</i>xs]:list) <i>--></i>
|
||||||
|
| n <i><=</i> 0 <i>=></i> []
|
||||||
|
| empty list <i>=></i> []
|
||||||
|
| otherwise <i>=></i> [x] <i>++</i> take n-1, xs
|
||||||
|
|
||||||
|
last3 = reverse <i>>></i> take 3 <i>>></i> reverse</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="code bold"><b># Fira Code Bold</b>
|
||||||
|
|
||||||
|
take = (n, [x, <i>...</i>xs]:list) <i>--></i>
|
||||||
|
| n <i><=</i> 0 <i>=></i> []
|
||||||
|
| empty list <i>=></i> []
|
||||||
|
| otherwise <i>=></i> [x] <i>++</i> take n-1, xs
|
||||||
|
|
||||||
|
last3 = reverse <i>>></i> take 3 <i>>></i> reverse</div>
|
||||||
|
|
||||||
|
<div id="code_variable" class="code variable"><b># Fira Code Variable</b>
|
||||||
|
|
||||||
|
<input type="range" min="300" max="700" value="400" step="10" style="width: 300px;" oninput="onWeightChange(this.value)" onchange="onWeightChange(this.value)"> <span id="span_wght">400</span>
|
||||||
|
|
||||||
|
take = (n, [x, <i>...</i>xs]:list) <i>--></i>
|
||||||
|
| n <i><=</i> 0 <i>=></i> []
|
||||||
|
| empty list <i>=></i> []
|
||||||
|
| otherwise <i>=></i> [x] <i>++</i> take n-1, xs
|
||||||
|
|
||||||
|
last3 = reverse <i>>></i> take 3 <i>>></i> reverse</div>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,10 @@
|
|||||||
|
# This is the official list of project authors for copyright purposes.
|
||||||
|
# This file is distinct from the CONTRIBUTORS.txt file.
|
||||||
|
# See the latter for an explanation.
|
||||||
|
#
|
||||||
|
# Names should be added to this file as:
|
||||||
|
# Name or Organization <email address>
|
||||||
|
|
||||||
|
JetBrains <>
|
||||||
|
Philipp Nurullin <philipp.nurullin@jetbrains.com>
|
||||||
|
Konstantin Bulenkov <kb@jetbrains.com>
|
93
home_external/.local/share/fonts/JetBrainsMono-2.242/OFL.txt
Normal file
93
home_external/.local/share/fonts/JetBrainsMono-2.242/OFL.txt
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
Copyright 2020 The JetBrains Mono Project Authors (https://github.com/JetBrains/JetBrainsMono)
|
||||||
|
|
||||||
|
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||||
|
|
||||||
|
This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL
|
||||||
|
|
||||||
|
|
||||||
|
-----------------------------------------------------------
|
||||||
|
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||||
|
-----------------------------------------------------------
|
||||||
|
|
||||||
|
PREAMBLE
|
||||||
|
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||||
|
development of collaborative font projects, to support the font creation
|
||||||
|
efforts of academic and linguistic communities, and to provide a free and
|
||||||
|
open framework in which fonts may be shared and improved in partnership
|
||||||
|
with others.
|
||||||
|
|
||||||
|
The OFL allows the licensed fonts to be used, studied, modified and
|
||||||
|
redistributed freely as long as they are not sold by themselves. The
|
||||||
|
fonts, including any derivative works, can be bundled, embedded,
|
||||||
|
redistributed and/or sold with any software provided that any reserved
|
||||||
|
names are not used by derivative works. The fonts and derivatives,
|
||||||
|
however, cannot be released under any other type of license. The
|
||||||
|
requirement for fonts to remain under this license does not apply
|
||||||
|
to any document created using the fonts or their derivatives.
|
||||||
|
|
||||||
|
DEFINITIONS
|
||||||
|
"Font Software" refers to the set of files released by the Copyright
|
||||||
|
Holder(s) under this license and clearly marked as such. This may
|
||||||
|
include source files, build scripts and documentation.
|
||||||
|
|
||||||
|
"Reserved Font Name" refers to any names specified as such after the
|
||||||
|
copyright statement(s).
|
||||||
|
|
||||||
|
"Original Version" refers to the collection of Font Software components as
|
||||||
|
distributed by the Copyright Holder(s).
|
||||||
|
|
||||||
|
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||||
|
or substituting -- in part or in whole -- any of the components of the
|
||||||
|
Original Version, by changing formats or by porting the Font Software to a
|
||||||
|
new environment.
|
||||||
|
|
||||||
|
"Author" refers to any designer, engineer, programmer, technical
|
||||||
|
writer or other person who contributed to the Font Software.
|
||||||
|
|
||||||
|
PERMISSION & CONDITIONS
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||||
|
redistribute, and sell modified and unmodified copies of the Font
|
||||||
|
Software, subject to the following conditions:
|
||||||
|
|
||||||
|
1) Neither the Font Software nor any of its individual components,
|
||||||
|
in Original or Modified Versions, may be sold by itself.
|
||||||
|
|
||||||
|
2) Original or Modified Versions of the Font Software may be bundled,
|
||||||
|
redistributed and/or sold with any software, provided that each copy
|
||||||
|
contains the above copyright notice and this license. These can be
|
||||||
|
included either as stand-alone text files, human-readable headers or
|
||||||
|
in the appropriate machine-readable metadata fields within text or
|
||||||
|
binary files as long as those fields can be easily viewed by the user.
|
||||||
|
|
||||||
|
3) No Modified Version of the Font Software may use the Reserved Font
|
||||||
|
Name(s) unless explicit written permission is granted by the corresponding
|
||||||
|
Copyright Holder. This restriction only applies to the primary font name as
|
||||||
|
presented to the users.
|
||||||
|
|
||||||
|
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||||
|
Software shall not be used to promote, endorse or advertise any
|
||||||
|
Modified Version, except to acknowledge the contribution(s) of the
|
||||||
|
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||||
|
permission.
|
||||||
|
|
||||||
|
5) The Font Software, modified or unmodified, in part or in whole,
|
||||||
|
must be distributed entirely under this license, and must not be
|
||||||
|
distributed under any other license. The requirement for fonts to
|
||||||
|
remain under this license does not apply to any document created
|
||||||
|
using the Font Software.
|
||||||
|
|
||||||
|
TERMINATION
|
||||||
|
This license becomes null and void if any of the above conditions are
|
||||||
|
not met.
|
||||||
|
|
||||||
|
DISCLAIMER
|
||||||
|
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||||
|
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||||
|
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
|
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||||
|
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||||
|
OTHER DEALINGS IN THE FONT SOFTWARE.
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Candara.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Candara.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Candarab.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Candarab.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Candarai.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Candarai.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Candaral.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Candaral.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Candarali.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Candarali.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Candaraz.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Candaraz.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Gabriola.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Gabriola.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Inkfree.ttf
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Inkfree.ttf
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/Sitka.ttc
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/Sitka.ttc
Normal file
Binary file not shown.
BIN
home_external/.local/share/fonts/ms_fonts/SitkaB.ttc
Normal file
BIN
home_external/.local/share/fonts/ms_fonts/SitkaB.ttc
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user