mirror of
https://github.com/LeCoupa/awesome-cheatsheets.git
synced 2026-01-25 20:58:03 -08:00
Compare commits
9 Commits
30e06f54f5
...
fb0f423055
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fb0f423055 | ||
|
|
88e5be6e4b | ||
|
|
2f9037b24e | ||
|
|
0931c8fc67 | ||
|
|
3c2016f645 | ||
|
|
4fdd37d875 | ||
|
|
707a1a22e2 | ||
|
|
c0826b86c0 | ||
|
|
fe246970c9 |
@@ -16,3 +16,69 @@ GRANT ALL PRIVILEGES ON prospectwith.* TO 'power'@'localhost' WITH GRANT OPTION;
|
||||
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; # Create user
|
||||
|
||||
mysql -u root -pmypassword -e "MY SQL QUERY" &>> query.log & disown # Run SQL query in the background
|
||||
|
||||
# *****************************************************************************
|
||||
# Database and Table Operations
|
||||
# *****************************************************************************
|
||||
|
||||
CREATE DATABASE database_name; # Create a new database
|
||||
DROP DATABASE database_name; # Delete a database
|
||||
CREATE TABLE table_name (column1 datatype, column2 datatype, ...); # Create a new table
|
||||
DROP TABLE table_name; # Delete a table
|
||||
SHOW TABLES; # Display all tables in the current database
|
||||
DESCRIBE table_name; # Show the structure of a table
|
||||
|
||||
# *****************************************************************************
|
||||
# Data Manipulation
|
||||
# *****************************************************************************
|
||||
|
||||
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...); # Insert data into a table
|
||||
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition; # Update existing data in a table
|
||||
DELETE FROM table_name WHERE condition; # Delete data from a table
|
||||
SELECT column1, column2, ... FROM table_name WHERE condition; # Select data from a table
|
||||
|
||||
# *****************************************************************************
|
||||
# Backup and Restore
|
||||
# *****************************************************************************
|
||||
|
||||
mysqldump -u username -p database_name table1 table2 > file.sql # Backup specific tables
|
||||
mysql -u username -p database_name < file.sql # Restore specific tables
|
||||
|
||||
# *****************************************************************************
|
||||
# User Management and Security
|
||||
# *****************************************************************************
|
||||
|
||||
REVOKE privilege_type ON database_name.table_name FROM 'username'@'hostname'; # Revoke privileges from a user
|
||||
DROP USER 'username'@'hostname'; # Delete a user
|
||||
ALTER USER 'username'@'hostname' IDENTIFIED BY 'newpassword'; # Reset a user's password
|
||||
|
||||
# *****************************************************************************
|
||||
# Performance and Maintenance
|
||||
# *****************************************************************************
|
||||
|
||||
OPTIMIZE TABLE table_name; # Optimize a table
|
||||
ANALYZE TABLE table_name; # Analyze a table for key distribution and storage optimization
|
||||
CHECK TABLE table_name; # Check a table for errors
|
||||
REPAIR TABLE table_name; # Repair a corrupted table
|
||||
|
||||
# *****************************************************************************
|
||||
# Advanced Queries
|
||||
# *****************************************************************************
|
||||
|
||||
SELECT ... FROM table1 JOIN table2 ON table1.column = table2.column; # Perform a join operation between two tables
|
||||
SELECT ... FROM (SELECT ... FROM table_name) AS subquery; # Use a subquery within another query
|
||||
SELECT column, COUNT(*) FROM table_name GROUP BY column; # Group results and use aggregate functions
|
||||
|
||||
# *****************************************************************************
|
||||
# System Information
|
||||
# *****************************************************************************
|
||||
|
||||
SELECT VERSION(); # Show the current version of MySQL
|
||||
SELECT User, Host FROM mysql.user; # List all current MySQL users
|
||||
|
||||
# *****************************************************************************
|
||||
# Miscellaneous
|
||||
# *****************************************************************************
|
||||
|
||||
SET GLOBAL general_log = 'ON'; # Enable query logging
|
||||
SHOW FULL PROCESSLIST; # Show the last queries executed in MySQL
|
||||
|
||||
@@ -3,7 +3,7 @@ CHEATSHEET C#
|
||||
1. Data Types
|
||||
|
||||
Primitive Size Example
|
||||
|
||||
|
||||
String 2 bytes/char s = "reference";
|
||||
bool b = true;
|
||||
char 2 bytes ch = 'a';
|
||||
@@ -16,20 +16,20 @@ CHEATSHEET C#
|
||||
decimal 16 bytes val = 70.0M;
|
||||
|
||||
2. Arrays
|
||||
|
||||
|
||||
2.1 Declaration
|
||||
|
||||
//Initiliazed using a list defined with curly braces
|
||||
int[] nameArray = {100, 101, 102};
|
||||
|
||||
|
||||
//Define an empty array
|
||||
int[] nameArray = new int[3]; // 3 rows and 2 columns
|
||||
|
||||
|
||||
//To access a specific item in the array
|
||||
int[] nameArray = new int[10];
|
||||
int firstNumber = nameArray[0];
|
||||
nameArray[1] = 20;
|
||||
|
||||
|
||||
//Multidimensional arrays
|
||||
int [,] matrix = new int [2,2]
|
||||
matrix[0,0] = 1;
|
||||
@@ -40,26 +40,26 @@ CHEATSHEET C#
|
||||
int[,] predefinedMatrix = new int[2,2] { { 1, 2 }, { 3, 4 } };
|
||||
|
||||
2.2 Array Operations
|
||||
|
||||
|
||||
//Sort ascending
|
||||
Array.Sort(nameArray);
|
||||
|
||||
|
||||
//Sort begins at element 6 and sorts 20 elements
|
||||
Array.Sort(nameArray,6,20);
|
||||
|
||||
|
||||
//Use 1 array as a key & sort 2 arrays
|
||||
string[] values = {"Juan", "Victor", "Elena"};
|
||||
string[] keys = {"Jimenez", "Martin", "Ortiz"};
|
||||
Array.Sort(keys, values);
|
||||
|
||||
|
||||
//Clear elements in array (array, first element, # elements)
|
||||
Array.Clear(nameArray, 0, nameArray.Length);
|
||||
|
||||
|
||||
//Copy elements from one array to another
|
||||
Array.Copy(scr, target, numOfElements);
|
||||
|
||||
3. String Operations
|
||||
|
||||
|
||||
//To concatenate between strings, use the plus operator:
|
||||
string firstName = "Erin";
|
||||
string lastName = "Roger";
|
||||
@@ -68,27 +68,27 @@ CHEATSHEET C#
|
||||
//To add one string to another, use the += operator:
|
||||
string secondLastName = "Green";
|
||||
string fullName += secondLastName;
|
||||
|
||||
|
||||
//ToString function
|
||||
//It converts an object to its string representation so that it is suitable for display
|
||||
Object.ToString();
|
||||
|
||||
|
||||
//String formatting
|
||||
//Each additional argument to the function can be referred to in the string using the brackets operator with the index number.
|
||||
String.Format(String format, Object arg0);
|
||||
format - A composite format string that includes one or more format items
|
||||
format - A composite format string that includes one or more format items
|
||||
arg0 - The first or only object to format
|
||||
|
||||
//Substring
|
||||
//Returns a part of the string, beginning from the index specified as the argument. Substring also accepts a maximum length for the substring
|
||||
String.Substring(beginAt);
|
||||
String.Substring(beginAt, maximum);
|
||||
|
||||
|
||||
//Replace
|
||||
string newStr = oldStr.Replace("old","new");
|
||||
|
||||
//IndexOf
|
||||
//Finds the first ocurrence of a string in a larger string
|
||||
//Finds the first occurrence of a string in a larger string
|
||||
//Returns -1 if the string is not found
|
||||
String.IndexOf(val, start, num)
|
||||
val - string to search for
|
||||
@@ -102,7 +102,7 @@ CHEATSHEET C#
|
||||
String.Split(Char[]);
|
||||
|
||||
//ToCharArray
|
||||
//Places selected characteres in a string in a char array
|
||||
//Places selected characters in a string in a char array
|
||||
String str = "AaBbCcDd";
|
||||
//create array of 8 vowels
|
||||
var chars = str.ToCharArray();
|
||||
@@ -132,11 +132,11 @@ CHEATSHEET C#
|
||||
DateTime nextYear = DateTime.AddYears(1);
|
||||
|
||||
6. TimeSpan
|
||||
|
||||
|
||||
6.1 TimeSpan Constructor
|
||||
|
||||
TimpeSpan(hour, minute, sec)
|
||||
|
||||
|
||||
TimeSpan(hour, minute, sec)
|
||||
|
||||
TimeSpan timeS = new TimeSpan(10, 14, 50);
|
||||
TimeSpan timeS_Hours = TimeSpan.FromDays(3640);
|
||||
|
||||
@@ -144,8 +144,8 @@ CHEATSHEET C#
|
||||
|
||||
Format item syntax: {index[,alignment][:format string]}
|
||||
index - Specifies element in list of values to which format is applied
|
||||
aligment - Indicates minimun width (in characters) to display value
|
||||
format string - Contains the code which specififes the format of the displayed value
|
||||
alignment - Indicates minimum width (in characters) to display value
|
||||
format string - Contains the code which specifies the format of the displayed value
|
||||
|
||||
7.1 Numeric
|
||||
|
||||
@@ -168,7 +168,7 @@ CHEATSHEET C#
|
||||
csc -define:DEBUG -optimize -out:File2.exe *.cs -> Compiles all the C# files in the current directory with optimizations enabled and defines the DEBUG symbol. The output is File2.exe
|
||||
csc -target:library -out:File2.dll -warn:0 -nologo -debug *.cs -> Compiles all the C# files in the current directory producing a debug version of File2.dll. No logo and no warnings are displayed
|
||||
csc -target:library -out:Something.xyz *.cs -> Compiles all the C# files in the current directory to Something.xyz (a DLL)
|
||||
|
||||
|
||||
8.1 Compiler Options Listed
|
||||
|
||||
Option Purpose
|
||||
@@ -260,21 +260,21 @@ CHEATSHEET C#
|
||||
10. Loop
|
||||
|
||||
10.1 While
|
||||
|
||||
|
||||
while (condition) {body}
|
||||
|
||||
|
||||
10.2 Do while
|
||||
|
||||
do {body} while condition;
|
||||
|
||||
|
||||
10.3 For
|
||||
|
||||
for (initializer; termination condition; iteration;) {
|
||||
//statements
|
||||
}
|
||||
|
||||
|
||||
10.4 For each
|
||||
|
||||
|
||||
foreach (type identifier in collection) {
|
||||
//statements
|
||||
}
|
||||
@@ -293,7 +293,7 @@ CHEATSHEET C#
|
||||
[access modifier] className (parameters) [:initializer]
|
||||
|
||||
initializer -base calls constructor in base class.
|
||||
this calls constuctor within class.
|
||||
this calls constructor within class.
|
||||
|
||||
public class nameClass : Initializer {
|
||||
public className(dataType param1 , dataType param2, ...) : base(param1, param2)
|
||||
@@ -313,8 +313,8 @@ CHEATSHEET C#
|
||||
abstract – must be implemented by subclass
|
||||
|
||||
Passing parameters:
|
||||
1. By default, parametres are passed by value
|
||||
2. Passing by reference: ref, in and out modifers
|
||||
1. By default, parameters are passed by value
|
||||
2. Passing by reference: ref, in and out modifiers
|
||||
|
||||
To pass a parameter by reference with the intent of changing the value, use the ref, or out keyword. To pass by reference with the intent of avoiding copying but not changing the value, use the in modifier
|
||||
|
||||
@@ -331,9 +331,9 @@ CHEATSHEET C#
|
||||
12. Struct
|
||||
|
||||
12.1 Defining a structure
|
||||
|
||||
|
||||
[attribute][modifier] struct name [:interfaces] { struct-body }
|
||||
|
||||
|
||||
12.2 Class vs Structure
|
||||
|
||||
-> Classes are reference types and structs are value types
|
||||
@@ -378,7 +378,7 @@ CHEATSHEET C#
|
||||
//To declare an event inside a class, first a delegate type for the event must be declared.
|
||||
|
||||
public delegate string MyDelegate(string str);
|
||||
|
||||
|
||||
//The event itself is declared by using the event keyword
|
||||
|
||||
event MyDelegate MyEvent;
|
||||
|
||||
@@ -31,11 +31,11 @@ Preprocessor directives:
|
||||
|
||||
Create and execute a program
|
||||
|
||||
In Linux systems:
|
||||
In Linux systems:
|
||||
1. Open up a terminal
|
||||
2. Create the program: nano nameProgram.c
|
||||
3. Write the program and save it
|
||||
4. gcc -o nameExecutable nameProgram.c
|
||||
4. gcc -o nameExecutable nameProgram.c
|
||||
|
||||
32 Reserved words
|
||||
|
||||
@@ -106,8 +106,8 @@ Operators
|
||||
|
||||
( ) grouping parenthesis, function call
|
||||
[ ] array indexing, also [ ][ ] etc.
|
||||
-> selector, structure pointer
|
||||
. select structure element
|
||||
-> selector, structure pointer
|
||||
. select structure element
|
||||
! relational not, complement, ! a yields true or false
|
||||
~ bitwise not, ones complement, ~ a
|
||||
++ increment, pre or post to a variable
|
||||
@@ -153,7 +153,7 @@ Operators
|
||||
|
||||
|
||||
Operator precedence
|
||||
|
||||
|
||||
More precedence
|
||||
|
||||
LR ( ) [ ] -> . x++ x--
|
||||
@@ -203,7 +203,7 @@ Function definition
|
||||
|
||||
type function_name(int a, float b, const char * ch,...) { function_body }
|
||||
|
||||
/* only parameters passed by address can are modified*/
|
||||
/* only parameters passed by address can are modified*/
|
||||
|
||||
/* in the calling function, local copy can be modified*/
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ XML uses a DTD to describe the data.
|
||||
So the XML is a **Complement** to HTML.
|
||||
* HTML: is used to format and display the same data.
|
||||
|
||||
|
||||
|
||||
XML does not carry any information about how to be displayed. The same XML data can be used in many different presentation scenarios.
|
||||
Because of this, with XML, there is a full separation between data and presentation.
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ CTRL+X then ( # start recording a keyboard macro
|
||||
CTRL+X then ) # finish recording keyboard macro
|
||||
CTRL+X then E # recall last recorded keyboard macro
|
||||
CTRL+X then CTRL+E # invoke text editor (specified by $EDITOR) on current command line then execute resultes as shell commands
|
||||
CTRL+A then D # logout from screen but don't kill it, if any command exist, it will continue
|
||||
CTRL+A then D # logout from screen but don't kill it, if any command exist, it will continue
|
||||
|
||||
BACKSPACE # deletes one character backward
|
||||
DELETE # deletes one character under cursor
|
||||
@@ -94,7 +94,7 @@ cat <filename> # displays file raw content (will not be interpret
|
||||
cat -n <filename> # shows number of lines
|
||||
nl <file.sh> # shows number of lines in file
|
||||
cat filename1 > filename2 # Copy filename1 to filename2
|
||||
cat filename1 >> filename2 # merge two files texts together
|
||||
cat filename1 >> filename2 # merge two files texts together
|
||||
any_command > <filename> # '>' is used to perform redirections, it will set any_command's stdout to file instead of "real stdout" (generally /dev/stdout)
|
||||
more <filename> # shows the first part of a file (move with space and type q to quit)
|
||||
head <filename> # outputs the first lines of file (default: 10 lines)
|
||||
@@ -203,14 +203,14 @@ echo $$ # prints process ID of the current shell
|
||||
echo $! # prints process ID of the most recently invoked background job
|
||||
echo $? # displays the exit status of the last command
|
||||
read <varname> # reads a string from the input and assigns it to a variable
|
||||
read -p "prompt" <varname> # same as above but outputs a prompt to ask user for value
|
||||
read -p "prompt" <varname> # same as above but outputs a prompt to ask user for value
|
||||
column -t <filename> # display info in pretty columns (often used with pipe)
|
||||
let <varname> = <equation> # performs mathematical calculation using operators like +, -, *, /, %
|
||||
export VARNAME=value # defines an environment variable (will be available in subprocesses)
|
||||
export -f <funcname> # Exports function 'funcname'
|
||||
export var1="var1 value" # Export and assign in the same statement
|
||||
export <varname> # Copy Bash variable
|
||||
declare -x <varname> # Copy Bash variable
|
||||
export <varname> # Copy Bash variable
|
||||
declare -x <varname> # Copy Bash variable
|
||||
|
||||
array[0]=valA # how to define an array
|
||||
array[1]=valB
|
||||
@@ -507,9 +507,9 @@ function returntrap {
|
||||
trap returntrap RETURN # is executed each time a shell function or a script executed with the . or source commands finishes executing
|
||||
|
||||
##############################################################################
|
||||
# COLORS AND BACKGROUNDS
|
||||
# COLORS AND BACKGROUNDS
|
||||
##############################################################################
|
||||
# note: \e or \x1B also work instead of \033
|
||||
# note: \e or \x1B also work instead of \033
|
||||
# Reset
|
||||
Color_Off='\033[0m' # Text Reset
|
||||
|
||||
@@ -524,14 +524,14 @@ Cyan='\033[0;36m' # Cyan
|
||||
White='\033[0;97m' # White
|
||||
|
||||
# Additional colors
|
||||
LGrey='\033[0;37m' # Ligth Gray
|
||||
LGrey='\033[0;37m' # Light Gray
|
||||
DGrey='\033[0;90m' # Dark Gray
|
||||
LRed='\033[0;91m' # Ligth Red
|
||||
LGreen='\033[0;92m' # Ligth Green
|
||||
LYellow='\033[0;93m'# Ligth Yellow
|
||||
LBlue='\033[0;94m' # Ligth Blue
|
||||
LRed='\033[0;91m' # Light Red
|
||||
LGreen='\033[0;92m' # Light Green
|
||||
LYellow='\033[0;93m'# Light Yellow
|
||||
LBlue='\033[0;94m' # Light Blue
|
||||
LPurple='\033[0;95m'# Light Purple
|
||||
LCyan='\033[0;96m' # Ligth Cyan
|
||||
LCyan='\033[0;96m' # Light Cyan
|
||||
|
||||
|
||||
# Bold
|
||||
@@ -566,6 +566,6 @@ On_White='\033[47m' # White
|
||||
|
||||
# Example of usage
|
||||
echo -e "${Green}This is GREEN text${Color_Off} and normal text"
|
||||
echo -e "${Red}${On_White}This is Red test on White background${Color_Off}"
|
||||
echo -e "${Red}${On_White}This is Red test on White background${Color_Off}"
|
||||
# option -e is mandatory, it enable interpretation of backslash escapes
|
||||
printf "${Red} This is red \n"
|
||||
|
||||
@@ -397,8 +397,8 @@ d, t := doubleAndTriple(5)
|
||||
_, t := doubleAndTriple(3)
|
||||
// t = 9
|
||||
|
||||
// Functions can defer commands. Defered commands are
|
||||
// runned in a stack order after the execution and
|
||||
// Functions can defer commands. Deferred commands are
|
||||
// ran in a stack order after the execution and
|
||||
// returning of a function
|
||||
var aux = 0
|
||||
|
||||
@@ -488,7 +488,7 @@ person3.Age // 0
|
||||
|
||||
## Maps
|
||||
|
||||
Maps are data structures that holds values assigneds to a key.
|
||||
Maps are data structures that holds values assigned to a key.
|
||||
|
||||
```go
|
||||
// Declaring a map
|
||||
@@ -508,7 +508,7 @@ newYork // "EUA"
|
||||
// Delete
|
||||
delete(cities, "NY")
|
||||
|
||||
// Check if a key is setted
|
||||
// Check if a key is set
|
||||
value, ok := cities["NY"]
|
||||
ok // false
|
||||
value // ""
|
||||
@@ -600,7 +600,7 @@ Go doesn't support `throw`, `try`, `catch` and other common error handling struc
|
||||
```go
|
||||
import "errors"
|
||||
|
||||
// Function that contain a logic that can cause a possible exception flow
|
||||
// Function that contain a logic that can cause a possible exception flow
|
||||
func firstLetter(text string) (string, error) {
|
||||
if len(text) < 1 {
|
||||
return nil, errors.New("Parameter text is empty")
|
||||
@@ -632,7 +632,7 @@ func Sum(x, y int) int {
|
||||
}
|
||||
|
||||
// main_test.go
|
||||
import (
|
||||
import (
|
||||
"testing"
|
||||
"reflect"
|
||||
)
|
||||
@@ -676,7 +676,7 @@ func main() {
|
||||
blocking2: 0
|
||||
blocking2: 1
|
||||
blocking2: 2
|
||||
done
|
||||
done
|
||||
*/
|
||||
|
||||
// Go routines are a function (either declared previously or anonymous) called with the keyword go
|
||||
|
||||
@@ -204,7 +204,7 @@ a \|= b; //a is the variable name; b is the variable name; this expression is an
|
||||
}
|
||||
```
|
||||
**Example:**
|
||||
```java
|
||||
```java
|
||||
for (int i = 0; i <= n; i++) {
|
||||
System.out.println(i);
|
||||
}
|
||||
@@ -254,10 +254,10 @@ for(dataType item : array) {
|
||||
|
||||
**Example:**
|
||||
```java
|
||||
int i=1;
|
||||
do{
|
||||
System.out.println(i);
|
||||
i++;
|
||||
int i=1;
|
||||
do{
|
||||
System.out.println(i);
|
||||
i++;
|
||||
}while(i<=10);
|
||||
```
|
||||
|
||||
@@ -308,7 +308,7 @@ for(dataType item : array) {
|
||||
//Declare a variable, object name
|
||||
String s;
|
||||
|
||||
//Invoke a contructor to create an object
|
||||
//Invoke a constructor to create an object
|
||||
s = new String ("Hello World");
|
||||
|
||||
//Invoke an instance method that operates on the object's value
|
||||
@@ -361,13 +361,13 @@ class MyClass {
|
||||
// four methods
|
||||
public void setCadence(int newValue) {
|
||||
cadence = newValue;
|
||||
}
|
||||
}
|
||||
public void setGear(int newValue) {
|
||||
gear = newValue;
|
||||
}
|
||||
}
|
||||
public void applyBrake(int decrement) {
|
||||
speed -= decrement;
|
||||
}
|
||||
}
|
||||
public void speedUp(int increment) {
|
||||
speed += increment;
|
||||
}
|
||||
@@ -531,13 +531,13 @@ class MyClass extends MySuperClass implements YourInterface {
|
||||
|
||||
|
||||
```java
|
||||
interface print{
|
||||
void printPaper();
|
||||
}
|
||||
public class A4 implements print{
|
||||
interface print{
|
||||
void printPaper();
|
||||
}
|
||||
public class A4 implements print{
|
||||
public void printPaper(){
|
||||
System.out.println("A4 Page Printed. ");
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<?php
|
||||
|
||||
// Exit the file, string inside get's echo'ed
|
||||
die("This file is not ment to be ran. ¯\_(ツ)_/¯");
|
||||
exit("This file is not ment to be ran. ¯\_(ツ)_/¯");
|
||||
die("This file is not meant to be ran. ¯\_(ツ)_/¯");
|
||||
exit("This file is not meant to be ran. ¯\_(ツ)_/¯");
|
||||
|
||||
/**
|
||||
* Printing
|
||||
@@ -17,7 +17,7 @@ var_dump($arr); // Print anything, with type hints for any value and sizes
|
||||
$string = 'Awesome cheatsheets';
|
||||
|
||||
str_contains($string, 'cheat'); // Find if the string contains the specified string (PHP >= 8.0)
|
||||
str_replace('Awesome', 'Bonjour', $string); // Replace all occurence
|
||||
str_replace('Awesome', 'Bonjour', $string); // Replace all occurrence
|
||||
strcmp($string, 'Awesome cheatsheets'); // Compare two strings
|
||||
strpos($string, 'a', 0); // Get position in the string
|
||||
str_split($string, 2); // Split the string
|
||||
@@ -189,7 +189,7 @@ $argc; // Number of arguments passed into terminal
|
||||
$myObject?->getName()?->startWith('A');
|
||||
|
||||
/**
|
||||
* Class
|
||||
* Class
|
||||
* http://php.net/manual/en/language.oop5.basic.php
|
||||
*/
|
||||
class NormalClass extends AbstractClassName implements InterfaceName
|
||||
@@ -200,7 +200,7 @@ class NormalClass extends AbstractClassName implements InterfaceName
|
||||
// --> PROPERTY TYPES <--
|
||||
|
||||
/**
|
||||
* Public property, everyone can access this property.
|
||||
* Public property, everyone can access this property.
|
||||
* @var Type
|
||||
*/
|
||||
public $property;
|
||||
@@ -251,7 +251,7 @@ class NormalClass extends AbstractClassName implements InterfaceName
|
||||
protected function protectedFunction(Type $var = null): Type
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Static function, doesn't need an instance to be executed.
|
||||
* @param Type
|
||||
@@ -541,7 +541,7 @@ u Pattern is treated as UTF-8
|
||||
\w Any "word" character (a-z 0-9 _)
|
||||
\W Any non "word" character
|
||||
\s Whitespace (space, tab CRLF)
|
||||
\S Any non whitepsace character
|
||||
\S Any non whitespace character
|
||||
\d Digits (0-9)
|
||||
\D Any non digit character
|
||||
. (Period) - Any character except newline
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
- As of python3.8 there are 35 keywords
|
||||
|
||||
| Keyword | Description | Category |
|
||||
|---------- | ---------- | --------- |
|
||||
|---------- | ---------- | --------- |
|
||||
| True | Boolean value for not False or 1 | Value Keyword|
|
||||
| False | Boolean Value for not True or 0 | Value Keyword |
|
||||
| None | No Value | Value keyword |
|
||||
@@ -58,7 +58,7 @@
|
||||
| else | this block will be executed if condition is false | conditional |
|
||||
| for | used for looping | iteration |
|
||||
| while | used for looping | iteration |
|
||||
| break | get out of loop | iteration |
|
||||
| break | get out of loop | iteration |
|
||||
| continue | skip for specific condition | iteration |
|
||||
| def | make user defined function | structure |
|
||||
| class | make user defined classes | structure |
|
||||
@@ -71,8 +71,8 @@
|
||||
| import | import libraries/modules/packages | import |
|
||||
| from | import specific function/classes from modules/packages | import |
|
||||
| try | this block will be tried to get executed | exception handling |
|
||||
| except | is any exception/error has occured it'll be executed | exception handling |
|
||||
| finally | It'll be executed no matter exception occurs or not | exception handling |
|
||||
| except | is any exception/error has occurred it'll be executed | exception handling |
|
||||
| finally | It'll be executed no matter exception occurs or not | exception handling |
|
||||
| raise | throws any specific error/exception | exception handling |
|
||||
| assert | throws an AssertionError if condition is false | exception handling |
|
||||
| async | used to define asynchronous functions/co-routines | asynchronous programming |
|
||||
@@ -135,7 +135,7 @@
|
||||
- Lists are created using square brackets:
|
||||
|
||||
```python
|
||||
thislist = ["apple", "banana", "cherry"]
|
||||
thislist = ["apple", "banana", "cherry"]
|
||||
```
|
||||
|
||||
- List items are ordered, changeable, and allow duplicate values.
|
||||
@@ -157,14 +157,14 @@ thislist = list(("apple", "banana", "cherry")) # note the double round-brackets
|
||||
- pop() function removes the last value in the given list by default.
|
||||
|
||||
```python
|
||||
thislist = ["apple", "banana", "cherry"]
|
||||
|
||||
thislist = ["apple", "banana", "cherry"]
|
||||
|
||||
print(thislist.pop()) # cherry
|
||||
print(thislist.pop(0)) #apple
|
||||
|
||||
print(thislist.pop(0)) #apple
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
### Tuple
|
||||
|
||||
@@ -291,14 +291,14 @@ thisdict = {
|
||||
"model": "Mustang",
|
||||
"year": 1964
|
||||
}
|
||||
|
||||
|
||||
x = car.pop("model")
|
||||
|
||||
|
||||
print(x)# Mustang
|
||||
print(car)#{'brand': 'Ford', 'year': 1964}
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
### Conditional branching
|
||||
|
||||
@@ -378,5 +378,5 @@ function_name()
|
||||
```
|
||||
|
||||
* We need not to specify the return type of the function.
|
||||
* Functions by default return `None`
|
||||
* Functions by default return `None`
|
||||
* We can return any datatype.
|
||||
|
||||
526
tools/vim.md
Normal file
526
tools/vim.md
Normal file
@@ -0,0 +1,526 @@
|
||||
# VIM CHEATSHEET
|
||||
#### WEBSITE: http://www.vim.org/
|
||||
#### DOCUMENTATION: https://vim.sourceforge.io/docs.php
|
||||
|
||||
### Table of Contents
|
||||
|
||||
* [CURSOR MOVEMENTS](#cursor-movements)
|
||||
* [BOOKMARKS](#bookmarks)
|
||||
* [INSERT MODE](#insert-mode)
|
||||
* [EDITING](#editing)
|
||||
* [DELETING TEXT](#deleting-text)
|
||||
* [COPYING AND MOVING TEXT](#copying-and-moving-text)
|
||||
* [MACROS](#macros)
|
||||
* [VISUAL MODE](#visual-mode)
|
||||
* [SPELLING](#spelling)
|
||||
* [EXITING](#exiting)
|
||||
* [SEARCH/REPLACE](#search-replace)
|
||||
* [MULTIPLE FILES](#multiple-files)
|
||||
* [WINDOWS](#windows)
|
||||
* [QUICKFIX WINDOW](#quickfix-window)
|
||||
* [PROGRAMMING](#programming)
|
||||
<details>
|
||||
<summary>Plugins</summary>
|
||||
|
||||
#### Plugins
|
||||
|
||||
* [ACK](#plugins>ack)
|
||||
* [CHEAT](#plugins>cheat)
|
||||
* [GIST](#plugins>gist)
|
||||
* [GUNDO](#plugins>gundo)
|
||||
* [LUSTYJUGGLER](#plugins>lustyjuggler)
|
||||
* [NERDCOMMENTER](#plugins>nerdcommenter)
|
||||
* [NERDTREE](#plugins>nerdtree)
|
||||
- [FILE](#file)
|
||||
- [DIRECTORY](#directory)
|
||||
- [BOOKMARK](#bookmark)
|
||||
- [TREE NAVIGATION](#tree-navigation)
|
||||
- [FILESYSTEM](#filesystem)
|
||||
- [TREE FILTERING](#tree-filtering)
|
||||
- [OTHER](#other)
|
||||
* [PDV](#plugins>pdv)
|
||||
* [PICKACOLOR](#plugins>pickacolor)
|
||||
* [SNIPMATE](#plugins>snipmate)
|
||||
* [SPARKUP](#plugins>sparkup)
|
||||
* [SURROUND](#plugins>surround)
|
||||
* [TABULAR](#plugins>tabular)
|
||||
* [TAGLIST](#plugins>taglist)
|
||||
* [UNIMPAIRED](#plugins>unimpaired)
|
||||
* [VIM-FUGITIVE](#plugins>vim-fugitive)
|
||||
* [VIM-MARKDOWN-PREVIEW](#plugins>vim-markdown-preview)
|
||||
* [VIM-PEEPOPEN](#plugins>vim-peepopen)
|
||||
* [VIM-SYMFONY](#plugins>vim-symfony)
|
||||
</details>
|
||||
|
||||
* [PERSONAL .VIMRC](#personal-vimrc)
|
||||
|
||||
|
||||
## CURSOR MOVEMENTS
|
||||
|
||||
* `h` move left
|
||||
* `j` move down
|
||||
* `k` move up
|
||||
* `l` move right
|
||||
* `w` jump by start of words (punctuation considered words)
|
||||
* `W` jump by words (spaces separate words)
|
||||
* `e` jump to end of words (punctuation considered words)
|
||||
* `E` jump to end of words (no punctuation)
|
||||
* `b` jump backward by words (punctuation considered words)
|
||||
* `B` jump backward by words (no punctuation)
|
||||
* `ge` jump backward to end of words
|
||||
* `0` (zero) start of line
|
||||
* `^` first non-blank character of line
|
||||
* `$` end of line
|
||||
* `-` move line upwards, on the first non blank character
|
||||
* `+` move line downwards, on the first non blank character
|
||||
* `<enter>` move line downwards, on the first non blank character
|
||||
* `gg` go to first line
|
||||
* `G` go to last line
|
||||
* `nG` go To line n
|
||||
* `:n` go To line n
|
||||
* `)` move the cursor forward to the next sentence.
|
||||
* `(` move the cursor backward by a sentence.
|
||||
* `{` move the cursor a paragraph backwards
|
||||
* `}` move the cursor a paragraph forwards
|
||||
* `]]` move the cursor a section forwards or to the next {
|
||||
* `[[` move the cursor a section backwards or the previous {
|
||||
* `CTRL-f` move the cursor forward by a screen of text
|
||||
* `CTRL-b` move the cursor backward by a screen of text
|
||||
* `CTRL-u` move the cursor up by half a screen
|
||||
* `CTRL-d` move the cursor down by half a screen
|
||||
* `H` move the cursor to the top of the screen.
|
||||
* `M` move the cursor to the middle of the screen.
|
||||
* `L` move the cursor to the bottom of the screen.
|
||||
* `fx` search line forward for 'x'
|
||||
* `Fx` search line backward for 'x'
|
||||
* `tx` search line forward before 'x'
|
||||
* `Tx` search line backward before 'x'
|
||||
|
||||
## BOOKMARKS
|
||||
|
||||
* `:marks` list all the current marks
|
||||
* `ma` make a bookmark named a at the current cursor position
|
||||
* `` `a `` go to position of bookmark a
|
||||
* `'a` go to the line with bookmark a
|
||||
* `` `.`` go to the line that you last edited
|
||||
|
||||
## INSERT MODE
|
||||
|
||||
* `i` start insert mode at cursor
|
||||
* `I` insert at the beginning of the line
|
||||
* `a` append after the cursor
|
||||
* `A` append at the end of the line
|
||||
* `o` open (append) blank line below current line
|
||||
* `O` open blank line above current line
|
||||
* `Esc` exit insert mode
|
||||
|
||||
## EDITING
|
||||
|
||||
* `r` replace a single character (does not use insert mode)
|
||||
* `R` enter Insert mode, replacing characters rather than inserting
|
||||
* `J` join line below to the current one
|
||||
* `cc` change (replace) an entire line
|
||||
* `cw` change (replace) to the end of word
|
||||
* `C` change (replace) to the end of line
|
||||
* `s` delete character at cursor and substitute text
|
||||
* `S` delete line at cursor and substitute text (same as cc)
|
||||
* `xp` transpose two letters (delete and paste, technically)
|
||||
* `u` undo
|
||||
* `CTRL-r` redo
|
||||
* `.` repeat last command
|
||||
* `~` switch case
|
||||
* `g~iw` switch case of current word
|
||||
* `gUiw` make current word uppercase
|
||||
* `guiw` make current word lowercase
|
||||
* `gU$` make uppercase until end of line
|
||||
* `gu$` make lowercase until end of line
|
||||
* `>>` indent line one column to right
|
||||
* `<<` indent line one column to left
|
||||
* `==` auto-indent current line
|
||||
* `ddp` swap current line with next
|
||||
* `ddkP` swap current line with previous
|
||||
* `:%retab` fix spaces / tabs issues in whole file
|
||||
* `:r [name]` insert the file [name] below the cursor.
|
||||
* `:r !{cmd}` execute {cmd} and insert its standard output below the cursor.
|
||||
|
||||
## DELETING TEXT
|
||||
|
||||
* `x` delete current character
|
||||
* `X` delete previous character
|
||||
* `dw` delete the current word
|
||||
* `dd` delete (cut) a line
|
||||
* `D` delete from cursor to end of line
|
||||
* `:[range]d` delete [range] lines
|
||||
|
||||
## COPYING AND MOVING TEXT
|
||||
|
||||
* `yw` yank word
|
||||
* `yy` yank (copy) a line
|
||||
* `2yy` yank 2 lines
|
||||
* `y$` yank to end of line
|
||||
* `p` put (paste) the clipboard after cursor/current line
|
||||
* `P` put (paste) before cursor/current line
|
||||
* `:set paste` avoid unexpected effects in pasting
|
||||
* `:registers` display the contents of all registers
|
||||
* `"xyw` yank word into register x
|
||||
* `"xyy` yank line into register x
|
||||
* `:[range]y x` yank [range] lines into register x
|
||||
* `"xp` put the text from register x after the cursor
|
||||
* `"xP` put the text from register x before the cursor
|
||||
* `"xgp` just like "p", but leave the cursor just after the new text
|
||||
* `"xgP` just like "P", but leave the cursor just after the new text
|
||||
* `:[line]put x` put the text from register x after [line]
|
||||
|
||||
## MACROS
|
||||
|
||||
* `qa` start recording macro 'a'
|
||||
* `q` end recording macro
|
||||
* `@a` replay macro 'a'
|
||||
* `@:` replay last command
|
||||
|
||||
## VISUAL MODE
|
||||
|
||||
* `v` start visual mode, mark lines, then do command (such as y-yank)
|
||||
* `V` start linewise visual mode
|
||||
* `o` move to other end of marked area
|
||||
* `U` upper case of marked area
|
||||
* `CTRL-v` start visual block mode
|
||||
* `O` move to other corner of block
|
||||
* `aw` mark a word
|
||||
* `ab` a () block (with braces)
|
||||
* `ab` a {} block (with brackets)
|
||||
* `ib` inner () block
|
||||
* `ib` inner {} block
|
||||
* `Esc` exit visual mode
|
||||
|
||||
##### VISUAL MODE COMMANDS
|
||||
|
||||
* `>` shift right
|
||||
* `<` shift left
|
||||
* `c` change (replace) marked text
|
||||
* `y` yank (copy) marked text
|
||||
* `d` delete marked text
|
||||
* `~` switch case
|
||||
|
||||
## SPELLING
|
||||
|
||||
* `]s` next misspelled word
|
||||
* `[s` previous misspelled word
|
||||
* `zg` add word to wordlist
|
||||
* `zug` undo last add word
|
||||
* `z=` suggest word
|
||||
|
||||
## EXITING
|
||||
|
||||
* `:q` quit Vim. This fails when changes have been made.
|
||||
* `:q!` quit without writing.
|
||||
* `:cq` quit always, without writing.
|
||||
* `:wq` write the current file and exit.
|
||||
* `:wq!` write the current file and exit always.
|
||||
* `:wq {file}` write to {file}. Exit if not editing the last
|
||||
* `:wq! {file}` write to {file} and exit always.
|
||||
* `:[range]wq[!]` same as above, but only write the lines in [range].
|
||||
* `ZZ` write current file, if modified, and exit.
|
||||
* `ZQ` quit current file and exit (same as ":q!").
|
||||
|
||||
## SEARCH/REPLACE
|
||||
|
||||
* `/pattern` search for pattern
|
||||
* `?pattern` search backward for pattern
|
||||
* `n` repeat search in same direction
|
||||
* `N` repeat search in opposite direction
|
||||
* `*` search forward, word under cursor
|
||||
* `#` search backward, word under cursor
|
||||
* `:%s/old/new/g` replace all old with new throughout file
|
||||
* `:%s/old/new/gc` replace all old with new throughout file with confirmation
|
||||
* `:argdo %s/old/new/gc | wq` open multiple files and run this command to replace old with new in every file with confirmation, save and quit
|
||||
|
||||
## MULTIPLE FILES
|
||||
|
||||
* `:e filename` edit a file in a new buffer
|
||||
* `:tabe filename` edit a file in a new tab (Vim7, gVim)
|
||||
* `:ls` list all buffers
|
||||
* `:bn` go to next buffer
|
||||
* `:bp` go to previous buffer
|
||||
* `:bd` delete a buffer (close a file)
|
||||
* `:b1` show buffer 1
|
||||
* `:b vimrc` show buffer whose filename begins with "vimrc"
|
||||
|
||||
## WINDOWS
|
||||
|
||||
* `:sp f` split open f
|
||||
* `:vsp f` vsplit open f
|
||||
* `CTRL-w s` split windows
|
||||
* `CTRL-w w` switch between windows
|
||||
* `CTRL-w q` quit a window
|
||||
* `CTRL-w v` split windows vertically
|
||||
* `CTRL-w x` swap windows
|
||||
* `CTRL-w h` left window
|
||||
* `CTRL-w j` down window
|
||||
* `CTRL-w k` up window
|
||||
* `CTRL-w l` right window
|
||||
* `CTRL-w +` increase window height
|
||||
* `CTRL-w -` decrease window height
|
||||
* `CTRL-w <` increase window width
|
||||
* `CTRL-w >` decrease window width
|
||||
* `CTRL-w =` equal window
|
||||
* `CTRL-w o` close other windows
|
||||
|
||||
## QUICKFIX WINDOW
|
||||
|
||||
* `copen` open quickfix window
|
||||
* `cclose` close quickfix window
|
||||
* `cc [nr]` display error [nr]
|
||||
* `cfirst` display the first error
|
||||
* `clast` display the last error
|
||||
* `[count]cn` display [count] next error
|
||||
* `[count]cp` display [count] previous error
|
||||
|
||||
## PROGRAMMING
|
||||
|
||||
* `%` show matching brace, bracket, or parenthese
|
||||
* `gf` edit the file whose name is under or after the cursor
|
||||
* `gd` when the cursor is on a local variable or function, jump to its declaration
|
||||
* `''` return to the line where the cursor was before the latest jump
|
||||
* `gi` return to insert mode where you inserted text the last time
|
||||
* `CTRL-o` move to previous position you were at
|
||||
* `CTRL-i` move to more recent position you were at
|
||||
|
||||
## PLUGINS > ACK
|
||||
|
||||
* `:Ack` Search recursively in directory
|
||||
* `o` to open (same as enter)
|
||||
* `go` to preview file (open but maintain focus on ack.vim results)
|
||||
* `t` to open in new tab
|
||||
* `T` to open in new tab silently
|
||||
* `q` to close the quickfix window
|
||||
|
||||
## PLUGINS > CHEAT
|
||||
|
||||
* `:Cheat` open cheat sheet (with autocomplete)
|
||||
* `<leader>ch` open cheat sheet for word under the cursor
|
||||
|
||||
## PLUGINS > GIST
|
||||
|
||||
* `:Gist` post whole text to gist
|
||||
* `:Gist XXXXX` get gist XXXXX
|
||||
* `:Gist -l` list my gists
|
||||
|
||||
## PLUGINS > GUNDO
|
||||
|
||||
* `:GundoToggle` show undo tree
|
||||
|
||||
## PLUGINS > LUSTYJUGGLER
|
||||
|
||||
* `<Leader>lj` show open buffers
|
||||
|
||||
## PLUGINS > NERDCOMMENTER
|
||||
|
||||
* `<leader>cc` comment out line(s)
|
||||
* `<leader>c<space>` toggle the comment state of the selected line(s)
|
||||
|
||||
## PLUGINS > NERDTREE
|
||||
|
||||
* `:NERDTreeToggle` show / hide file browser
|
||||
* `:NERDTreeFind` show current file in file browser
|
||||
* `:Bookmark name` bookmark the current node as "name"
|
||||
|
||||
#### FILE
|
||||
|
||||
* `o` open in prev window
|
||||
* `go` preview
|
||||
* `t` open in new tab
|
||||
* `T` open in new tab silently
|
||||
* `i` open split
|
||||
* `gi` preview split
|
||||
* `s` open vsplit
|
||||
* `gs` preview vsplit
|
||||
|
||||
#### DIRECTORY
|
||||
|
||||
* `o` open & close node
|
||||
* `O` recursively open node
|
||||
* `x` close parent of node
|
||||
* `X` close all child nodes of current node recursively
|
||||
* `e` explore selected dir
|
||||
|
||||
#### BOOKMARK
|
||||
|
||||
* `o` open bookmark
|
||||
* `t` open in new tab
|
||||
* `T` open in new tab silently
|
||||
* `D` delete bookmark
|
||||
|
||||
#### TREE NAVIGATION
|
||||
|
||||
* `P` go to root
|
||||
* `p` go to parent
|
||||
* `K` go to first child
|
||||
* `J` go to last child
|
||||
* `CTRL-j` go to next sibling
|
||||
* `CTRL-k` go to prev sibling
|
||||
|
||||
#### FILESYSTEM
|
||||
|
||||
* `C` change tree root to the selected dir
|
||||
* `u` move tree root up a dir
|
||||
* `U` move tree root up a dir but leave old root open
|
||||
* `r` refresh cursor dir
|
||||
* `R` refresh current root
|
||||
* `m` show menu
|
||||
* `cd` change the CWD to the selected dir
|
||||
|
||||
#### TREE FILTERING
|
||||
|
||||
* `I` hidden files
|
||||
* `f` file filters
|
||||
* `F` files
|
||||
* `B` bookmarks
|
||||
|
||||
#### OTHER
|
||||
|
||||
* `q` close the NERDTree window
|
||||
* `A` zoom (maximize-minimize) the NERDTree window
|
||||
* `?` toggle help
|
||||
|
||||
## PLUGINS > PDV
|
||||
|
||||
* `CTRL-P` generate PHP DOC
|
||||
|
||||
## PLUGINS > PICKACOLOR
|
||||
|
||||
* `:PickHEX` choose color in system color picker
|
||||
|
||||
## PLUGINS > SNIPMATE
|
||||
|
||||
* `<tab>` expand snippet
|
||||
|
||||
## PLUGINS > SPARKUP
|
||||
|
||||
* `CTRL-e` execute sparkup (zen coding expansion)
|
||||
* `CTRL-n` jump to the next empty tag / attribute
|
||||
|
||||
## PLUGINS > SURROUND
|
||||
|
||||
* `cs'"` change surrounding quotes to double-quotes
|
||||
* `cs(}` change surrounding parens to braces
|
||||
* `cs({` change surrounding parens to braces with space
|
||||
* `ds'` delete surrounding quotes
|
||||
* `dst` delete surrounding tags
|
||||
* `ysiw[` surround inner word with brackets
|
||||
* `vees'` surround 2 words (ee) with quotes '
|
||||
|
||||
## PLUGINS > TABULAR
|
||||
|
||||
* `:Tabularize /,` line the selected lines up on the commas
|
||||
|
||||
## PLUGINS > TAGLIST
|
||||
|
||||
* `:TlistToggle` open / close taglist window
|
||||
* `<enter>` jump to tag or file
|
||||
* `<space>` display the tag prototype
|
||||
|
||||
## PLUGINS > UNIMPAIRED
|
||||
|
||||
* `[space` new line above
|
||||
* `]space` new line below
|
||||
* `[e` exchange line above
|
||||
* `]e` exchange line below
|
||||
* `[x` XML encode
|
||||
* `]x` XML decode (with htmlentities)
|
||||
* `[q` jump to previous quickfix item
|
||||
* `]q` jump to next quickfix item
|
||||
* `[Q` jump to first quickfix item
|
||||
* `]Q` jump to last quickfix item
|
||||
|
||||
## PLUGINS > VIM-FUGITIVE
|
||||
|
||||
* `:Git` run a git command
|
||||
* `:Gstatus` git status : - to (un)stage , p to patch, C to commit
|
||||
* `:Gcommit` git commit
|
||||
* `:Gread` empty the buffer and revert to the last commit
|
||||
* `:Gwrite` write the current file and stage the results
|
||||
* `:Gmove` git mv
|
||||
* `:Gremove` git rm
|
||||
* `:Glog` git log
|
||||
* `:Gdiff` perform a vimdiff against the current file of a certain revision
|
||||
* `:Gblame` open blame information in a scroll bound vertical splitt
|
||||
* `:Gbrowse` open github
|
||||
|
||||
## PLUGINS > VIM-MARKDOWN-PREVIEW
|
||||
|
||||
* `:Mm` preview markdown document in webbrowser
|
||||
|
||||
## PLUGINS > VIM-PEEPOPEN
|
||||
|
||||
* `<Leader>p` open the current directory with the peepopen application (fuzzy search)
|
||||
|
||||
## PLUGINS > VIM-SYMFONY
|
||||
|
||||
* `:Sview` open template file
|
||||
* `:Saction` open action file
|
||||
* `:Smodel` open model file
|
||||
* `:Sfilter` open filter file
|
||||
* `:Sform` open form file
|
||||
* `:Spartial` open partial file / write selected content in partial + include
|
||||
* `:Scomponent` open component file / write selected content in component + include
|
||||
* `:Salternate` open alternate model file (class - table class)
|
||||
* `:Symfony` execute task
|
||||
|
||||
## PERSONAL .VIMRC
|
||||
|
||||
* `<leader>ev` edit vimrc file
|
||||
* `<leader>sv` reload vimrc file
|
||||
* `<leader>sh` show syntax highlighting groups for word under cursor
|
||||
* `<space>` page down
|
||||
* `jj` exit insertion mode
|
||||
* `<leader>q` close the current window
|
||||
* `<leader>/` clear the search register
|
||||
* `<leader>h` toggle hidden characters
|
||||
* `<leader>W` strip all trailing whitespace
|
||||
* `CTRL-h` go to left window
|
||||
* `CTRL-j` go to down window
|
||||
* `CTRL-k` go to top window
|
||||
* `CTRL-l` go to right window
|
||||
* `<leader>w` open vertical split window and activate
|
||||
* `%%` will expand to current directory
|
||||
* `<leader>ew` open file from current directory
|
||||
* `<leader>es` open file in split window from current directory
|
||||
* `<leader>cd` change directory to parent dir of current file
|
||||
* `##` will expand to webroot
|
||||
* `:Wrap` wrap text
|
||||
* `<F2>` toggle wrapped text
|
||||
* `<F3>` toggle spell check
|
||||
* `<F4>` toggle light/dark background
|
||||
* `<F5>` underline with dashes
|
||||
* `<F6>` underline with double lines
|
||||
* `<leader><up>` bubble line(s) up
|
||||
* `<leader><down>` bublle line(s) down
|
||||
|
||||
* `:Ltag` load tags file
|
||||
* `:Project` cd to project and load tags file
|
||||
* `<leader>t` show current tag for word under cursor
|
||||
* `<leader>st` show current tag for word under cursor in split window
|
||||
* `<leader>tj` show current tag list for word under cursor
|
||||
* `<leader>stj` show current tag list for word under cursor in split window
|
||||
* `CTRL-<space>` show omnicomplete menu
|
||||
* `<leader>b` surround with strong tags
|
||||
* `<leader>i` surround with em tags
|
||||
* `CTRL-p` generate PHP DOC
|
||||
* `<leader>a` run Ack
|
||||
* `<leader>md` preview markdown
|
||||
* `<leader>s` preview in safari
|
||||
* `<leader>x` colorpicker
|
||||
* `<leader>n` toggle Nerdtree
|
||||
* `<leader>N` close Nerdtree
|
||||
* `<leader>f` find current file in Nerdtree
|
||||
* `<leader>l` toggle Taglist
|
||||
* `<leader>L` close Taglist
|
||||
* `<leader>ph` set filetype to php.html
|
||||
* `<leader>r` reload all snipmate snippets
|
||||
* `CTRL-<tab>` switch between buffers
|
||||
* `CTRL-y` go to next tag of attribute in sparkup plugin
|
||||
* `<leader>g` toggle Gundo window
|
||||
* `IMG<CR>` show image browser to insert image tag with src, width and height
|
||||
* `b` insert image tag with dimensions from NERDTree
|
||||
http://stackoverflow.com/questions/5707925/vim-image-placement
|
||||
105
tools/vim.txt
105
tools/vim.txt
@@ -1,6 +1,6 @@
|
||||
##############################################################################
|
||||
# VIM CHEATSHEET
|
||||
# WEBSITE: http://www.vim.org/
|
||||
# WEBSITE: http://www.vim.org/
|
||||
# DOCUMENTATION: https://vim.sourceforge.io/docs.php
|
||||
##############################################################################
|
||||
|
||||
@@ -20,13 +20,15 @@ e jump to end of words (punctuation considered words)
|
||||
E jump to end of words (no punctuation)
|
||||
b jump backward by words (punctuation considered words)
|
||||
B jump backward by words (no punctuation)
|
||||
ge jump backward to end of words
|
||||
ge jump backward to end of a word
|
||||
gE jump backwards to the end of a word (words can contain punctuation)
|
||||
0 (zero) start of line
|
||||
^ first non-blank character of line
|
||||
$ end of line
|
||||
- move line upwards, on the first non blank character
|
||||
+ move line downwards, on the first non blank character
|
||||
<enter> move line downwards, on the first non blank character
|
||||
$ jump to the end of the line
|
||||
g_ jump to the last non-blank character of the line
|
||||
- move line upwards, on the first non-blank character
|
||||
+ move line downwards, on the first non-blank character
|
||||
<enter> move line downwards, on the first non-blank character
|
||||
gg go to first line
|
||||
G go to last line
|
||||
ngg go to line n
|
||||
@@ -38,10 +40,6 @@ nG go To line n
|
||||
} move the cursor a paragraph forwards
|
||||
]] move the cursor a section forwards or to the next {
|
||||
[[ move the cursor a section backwards or the previous {
|
||||
CTRL-f move the cursor forward by a screen of text
|
||||
CTRL-b move the cursor backward by a screen of text
|
||||
CTRL-u move the cursor up by half a screen
|
||||
CTRL-d move the cursor down by half a screen
|
||||
H move the cursor to the top of the screen.
|
||||
M move the cursor to the middle of the screen.
|
||||
L move the cursor to the bottom of the screen.
|
||||
@@ -49,6 +47,16 @@ fx search line forward for 'x'
|
||||
Fx search line backward for 'x'
|
||||
tx search line forward before 'x'
|
||||
Tx search line backward before 'x'
|
||||
CTRL-y moves screen up one line
|
||||
CTRL-e moves screen down one line
|
||||
CTRL-u moves cursor & screen up ½ page
|
||||
CTRL-d moves cursor & screen down ½ page
|
||||
CTRL-b moves screen up one page, cursor to last line
|
||||
CTRL-f moves screen down one page, cursor to first line
|
||||
zz shift current line to middle of screen
|
||||
z. same as zz but also jumps to the first non-black character
|
||||
zt shift current line to top of screen
|
||||
zb shift current line to bottom of screen
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -60,8 +68,15 @@ Tx search line backward before 'x'
|
||||
ma make a bookmark named a at the current cursor position
|
||||
`a go to position of bookmark a
|
||||
'a go to the line with bookmark a
|
||||
`0 go to the position where Vim was previously exited
|
||||
`" go to the position when last editing this file
|
||||
`. go to the line that you last edited
|
||||
`` go to the position before the last jump
|
||||
g, go to newer position in change list
|
||||
g; go to older position in change list
|
||||
|
||||
# Tip: To jump to a mark you can either use a backtick (`) or an apostrophe (').
|
||||
# Using an apostrophe jumps to the beginning (first non-blank) of the line holding the mark.
|
||||
|
||||
##############################################################################
|
||||
# INSERT MODE
|
||||
@@ -70,10 +85,13 @@ ma make a bookmark named a at the current cursor position
|
||||
|
||||
i start insert mode at cursor
|
||||
I insert at the beginning of the line
|
||||
gi return to insert mode where you inserted text the last time
|
||||
gI like "I", but always start in column 1
|
||||
a append after the cursor
|
||||
A append at the end of the line
|
||||
o open (append) blank line below current line
|
||||
O open blank line above current line
|
||||
CTRL-o Temporarily enter normal mode to issue one normal-mode command(while in insert mode)
|
||||
Esc exit insert mode
|
||||
|
||||
|
||||
@@ -84,10 +102,25 @@ Esc exit insert mode
|
||||
|
||||
r replace a single character (does not use insert mode)
|
||||
R enter Insert mode, replacing characters rather than inserting
|
||||
J join line below to the current one
|
||||
J join line below to the current one with one space in between
|
||||
gJ join line below to the current one without space in between
|
||||
cc change (replace) an entire line
|
||||
cw change (replace) to the end of word
|
||||
C change (replace) to the end of line
|
||||
cw change (replace) to the end of word (same as ce)
|
||||
2cw change (replace) repeat cw twice
|
||||
ciw change (replace) word under the cursor
|
||||
caw change (replace) word under the cursor and the space after or before it
|
||||
ci" change (replace) word inside ""
|
||||
cit change (replace) html tag content
|
||||
cat change (replace) html tag
|
||||
cis change (replace) sentence under the cursor
|
||||
cas change (replace) sentence under the cursor and the space after or before it
|
||||
cib change (replace) inside a block with ()
|
||||
cab change (replace) a block with ()
|
||||
ciB change (replace) inside a block with {}
|
||||
caB change (replace) a block with {}
|
||||
C change (replace) to the end of line(same as c$)
|
||||
cG change (replace) to the end of the file
|
||||
cgg change (replace) from first line to current line
|
||||
ct' change (replace) until the ' character (can change ' for any character)
|
||||
s delete character at cursor and substitute text
|
||||
S delete line at cursor and substitute text (same as cc)
|
||||
@@ -102,6 +135,7 @@ guiw make current word lowercase
|
||||
gU$ make uppercase until end of line
|
||||
gu$ make lowercase until end of line
|
||||
>> indent line one column to right
|
||||
>i{ indent everything in the {}
|
||||
<< indent line one column to left
|
||||
== auto-indent current line
|
||||
ddp swap current line with next
|
||||
@@ -110,6 +144,7 @@ ddkP swap current line with previous
|
||||
:r [name] insert the file [name] below the cursor.
|
||||
:r !{cmd} execute {cmd} and insert its standard output below the cursor.
|
||||
|
||||
# Tip: Instead of b or B one can also use ( or { respectively.
|
||||
|
||||
##############################################################################
|
||||
# DELETING TEXT
|
||||
@@ -118,10 +153,15 @@ ddkP swap current line with previous
|
||||
|
||||
x delete current character
|
||||
X delete previous character
|
||||
dw delete the current word
|
||||
dw delete (cut) to the end of word (same as de)
|
||||
diw delete (cut) word under the cursor
|
||||
daw delete (cut) word under the cursor and the space after or before it
|
||||
dap delete (cut) a paragraph
|
||||
dd delete (cut) a line
|
||||
dt' delete until the next ' character on the line (replace ' by any character)
|
||||
D delete from cursor to end of line
|
||||
dt' delete (cut) until the next ' character on the line (replace ' by any character)
|
||||
dG delete (cut) to the end of the file
|
||||
dgg delete (cut) from first line to current line
|
||||
D delete (cut) from cursor to end of line (same as d$)
|
||||
:[range]d delete [range] lines
|
||||
|
||||
|
||||
@@ -136,6 +176,10 @@ yy yank (copy) a line
|
||||
y$ yank to end of line
|
||||
p put (paste) the clipboard after cursor/current line
|
||||
P put (paste) before cursor/current line
|
||||
gp put (paste) the clipboard after cursor and leave cursor after the new text
|
||||
gP put (paste) before cursor and leave cursor after the new text
|
||||
"+y yank into the system clipboard register
|
||||
"+p paste from the system clipboard register
|
||||
:set paste avoid unexpected effects in pasting
|
||||
:registers display the contents of all registers
|
||||
"xyw yank word into register x
|
||||
@@ -147,6 +191,12 @@ P put (paste) before cursor/current line
|
||||
"xgP just like "P", but leave the cursor just after the new text
|
||||
:[line]put x put the text from register x after [line]
|
||||
|
||||
# Tip: if you are using vim extension on vs code, you can enable
|
||||
"vim.useSystemClipboard": true
|
||||
in setting.json, this will allow to Use system clipboard for unnamed register.
|
||||
|
||||
|
||||
|
||||
|
||||
##############################################################################
|
||||
# MACROS
|
||||
@@ -157,6 +207,7 @@ qa start recording macro 'a'
|
||||
q end recording macro
|
||||
@a replay macro 'a'
|
||||
@: replay last command
|
||||
@@ repeat macro
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -172,9 +223,11 @@ CTRL-v start visual block mode
|
||||
O move to other corner of block
|
||||
aw mark a word
|
||||
ab a () block (with braces)
|
||||
ab a {} block (with brackets)
|
||||
aB a {} block (with brackets)
|
||||
at a block with <> tags
|
||||
ib inner () block
|
||||
ib inner {} block
|
||||
iB inner {} block
|
||||
it inner <> block
|
||||
Esc exit visual mode
|
||||
|
||||
VISUAL MODE COMMANDS
|
||||
@@ -194,6 +247,7 @@ v% selects matching parenthesis
|
||||
vi{ selects matching curly brace
|
||||
vi" selects text between double quotes
|
||||
vi' selects text between single quotes
|
||||
gv reselect the last selected area
|
||||
|
||||
##############################################################################
|
||||
# SPELLING
|
||||
@@ -240,7 +294,7 @@ set ic ignore case: turn on
|
||||
set noic ignore case: turn off
|
||||
:%s/old/new/g replace all old with new throughout file
|
||||
:%s/old/new/gc replace all old with new throughout file with confirmation
|
||||
:argdo %s/old/new/gc | wq open multiple files and run this command to replace old
|
||||
:argdo %s/old/new/gc | wq open multiple files and run this command to replace old
|
||||
with new in every file with confirmation, save and quit
|
||||
|
||||
|
||||
@@ -283,7 +337,6 @@ CTRL-w < increase window width
|
||||
CTRL-w > decrease window width
|
||||
CTRL-w = equal window
|
||||
CTRL-w o close other windows
|
||||
zz Centers the window to the current line
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -306,12 +359,14 @@ clast display the last error
|
||||
|
||||
|
||||
% show matching brace, bracket, or parenthese
|
||||
gf edit the file whose name is under or after the cursor
|
||||
gf edit the file whose name is under the cursor
|
||||
gF edit the file whose name is under the cursor and jump to the line number
|
||||
gd when the cursor is on a local variable or function, jump to its declaration
|
||||
'' return to the line where the cursor was before the latest jump
|
||||
gi return to insert mode where you inserted text the last time
|
||||
CTRL-o move to previous position you were at
|
||||
CTRL-i move to more recent position you were at
|
||||
:set nu display numbers (short for :set number)
|
||||
:set nonu hide numbers (short for :set nonumber)
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -485,7 +540,7 @@ CTRL-n jump to the next empty tag / attribute
|
||||
|
||||
|
||||
cs'" change surrounding quotes to double-quotes
|
||||
cs(} change surrounding parens to braces
|
||||
cs(} change surrounding parens to braces
|
||||
cs({ change surrounding parens to braces with space
|
||||
ds' delete surrounding quotes
|
||||
dst delete surrounding tags
|
||||
@@ -593,7 +648,7 @@ jj exit insertion mode
|
||||
|
||||
<leader>/ clear the search register
|
||||
|
||||
<leader>h toggle hidden characters
|
||||
<leader>h toggle hidden characters
|
||||
|
||||
<leader>W strip all trailing whitespace
|
||||
|
||||
@@ -661,5 +716,5 @@ CTRL-y go to next tag of attribute in sparkup plugin
|
||||
<leader>g toggle Gundo window
|
||||
|
||||
IMG<CR> show image browser to insert image tag with src, width and height
|
||||
b insert image tag with dimensions from NERDTree
|
||||
b insert image tag with dimensions from NERDTree
|
||||
(http://stackoverflow.com/questions/5707925/vim-image-placement)
|
||||
|
||||
Reference in New Issue
Block a user