Rehber Topluluk Destekli Bir Cheat Sheet: Cheat.sh

Cheat.sh​

Cheat.sh topluluk tarafından geliştirilen bir cheat sheet. Bu cheat sheet'e web sayfasından veya curl ile erişebiliyorsunuz, offline olarak da kullanabiliyorsunuz. Yazılım ile ilgilenenler için çok faydalı olduğunu düşünüyorum.

Özellikleri (Github Sayfasından Alıntı)
  • Basit curl/tarayıcı/editör arayüzü.
  • 56 programlama dili, birçok DBMSes ve 1000'den fazla önemli UNIX/Linux komutu.
  • StackOverflow ile aynı düzeyde, dünyanın en iyi topluluk odaklı hile sayfası depolarına erişim sağlar.
  • Her yerde erişilebilir, indirmeniz gerekmez. (Çevrimdışı kullanım için sayfaları indirebilirsiniz.)
  • Ultra Hızlı, 100ms içinde cevap verir.
  • Zorunlu olmasa da çok avantajlı ve yararlı olan cht.sh adlı kullanışlı bir komut satırı istemcisine sahiptir.
  • Bir tarayıcı açmadan ve zihinsel bağlamınızı değiştirmeden doğrudan kod editörlerinden kullanılabilir.
  • Hiçbir tuşa dokunmadan ve ses çıkarmadan tamamen görünmez bir şekilde kullanılabileceği özel bir gizli modu destekler.
Kullanım
Bash:
curl cheat.sh

Yapmanız gereken tek şey merak ettiğiniz komutu veya dili girmek. Mesela;
Kod:
$ curl cheat.sh/vim

cheat:vim
# File management

:e              reload file
:q              quit
:q!             quit without saving changes
:w              write file
:w {file}       write new file
:x              write file and exit

# Movement

    k
  h   l         basic motion
    j

w               next start of word
W               next start of whitespace-delimited word
e               next end of word
E               next end of whitespace-delimited word
b               previous start of word
B               previous start of whitespace-delimited word
0               start of line
$               end of line
gg              go to first line in file
G               go to end of file
gk        move down one displayed line
gj        move up one displayed line

# Insertion
#   To exit from insert mode use Esc or Ctrl-C
#   Enter insertion mode and:

a               append after the cursor
A               append at the end of the line
i               insert before the cursor
I               insert at the beginning of the line
o               create a new line under the cursor
O               create a new line above the cursor
R               enter insert mode but replace instead of inserting chars
:r {file}       insert from file

# Editing

u               undo
yy              yank (copy) a line
y{motion}       yank text that {motion} moves over
p               paste after cursor
P               paste before cursor
<Del> or x      delete a character
dd              delete a line
d{motion}       delete text that {motion} moves over

# Search and replace with the `:substitute` (aka `:s`) command

:s/foo/bar/    replace the first match of 'foo' with 'bar' on the current line only
:s/foo/bar/g    replace all matches (`g` flag) of 'foo' with 'bar' on the current line only
:%s/foo/bar/g    replace all matches of 'foo' with 'bar' in the entire file (`:%s`)
:%s/foo/bar/gc    ask to manually confirm (`c` flag) each replacement

# Preceding a motion or edition with a number repeats it 'n' times
# Examples:
50k         moves 50 lines up
2dw         deletes 2 words
5yy         copies 5 lines
42G         go to line 42

# Multiple windows
:e filename      - edit another file
:split filename  - split window and load another file
ctrl-w up arrow  - move cursor up a window
ctrl-w ctrl-w    - move cursor to another window (cycle)
ctrl-w_          - maximize current window
ctrl-w=          - make all equal size
10 ctrl-w+       - increase window size by 10 lines
:vsplit file     - vertical split
:sview file      - same as split, but readonly
:hide            - close current window
:only            - keep only this window open
:ls              - show current buffers
:b 2             - open buffer #2 in this window

tldr:vim
# vim
# Vim (Vi IMproved), a command-line text editor, provides several modes for different kinds of text manipulation.
# Pressing `i` enters edit mode. `<Esc>` goes back to normal mode, which doesn't allow regular text insertion.
# More information: <https://www.vim.org>.

# Open a file:
vim path/to/file

# View Vim's help manual:
:help<Enter>

# Save and Quit:
:wq<Enter>

# Open a file at a specified line number:
vim +line_number path/to/file

# Undo the last operation:
u

# Search for a pattern in the file (press `n`/`N` to go to next/previous match):
/search_pattern<Enter>

# Perform a regex substitution in the whole file:
:%s/pattern/replacement/g<Enter>

# Display the line numbers:
:set nu<Enter>

Eğer bir dilin içerik listesini merak ediyorsanız; curl cheat.sh/dil/:list


Yukarıdaki listede de göreceğiniz gibi her dilin bir :learn adlı sayfası var. Bu sayfalar dilin temellerini öğretmek için hazırlanmış.
Örnek olarak curl cheat.sh/python/:learn yazarak bakabilirsiniz.

Her zaman kayıtlı cheat sheet'leri kullanmak zorunda değilsiniz. İstediğiniz query'yi aratıp StackOverFlow üzerinden doğrulanmış bir cevaba ulaşabilirsiniz. Birden fazla kelime aratacaksanız arasına + koyarak yazın.
Örnek: curl cheat.sh/python/list+append

Editör Eklentisi​

Vim, Emacs, Sublime gibi editörlerde eklentileri var ama ben en yaygın olarak VS Code için olanı göstereceğim.
vscode-snippet aratıyoruz eklenti sekmesinde ve görüntüdekini indiriyoruz.

Ctrl+shift+p yapıp Snippet:find'ı seçiyoruz ve aramak istediğimizi aratıyoruz.

Offline olarak kullanmak için lokale kurmak​

Bash:
curl https://cht.sh/:cht.sh > ~/bin/cht.sh
chmod +x ~/bin/cht.sh
Bash:
cht.sh --standalone-install

Eğer güncellemek isterseniz cheat.sh update-all yazmanız yeterli.

Cht.sh (offline) kullanım​

Bunda "curl cheat.sh" yerine cht.sh yazmanız yeterli. Query'leri de aşağıdaki örnekteki gibi yazın.
Kod:
cht.sh go reverse a list
cht.sh python random list elements
cht.sh js parse json

Otomatik (tab) tamamlama
Bash için;

Bash:
curl https://cheat.sh/:bash_completion > ~/.bash.d/cht.sh
. ~/.bash.d/cht.sh
# ve bu dosyadaki bash tamamlama script'ini  ~/.bash.d/cht.sh  bashrc dosyana ekle    ~/.bashrc

Bir özelliği de sizin araştırmanız için bıraktım. Bu özellik çok sinsi bir şey olduğundan hoşunuza gidebilir diye düşünüyorum, bu nedenle kaynaklarda verdiğim bağlantıdan kendiniz nasıl kullanacağınıza bakmayı unutmayın.

Kaynaklar​

 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…