mirror of
https://github.com/LeCoupa/awesome-cheatsheets.git
synced 2026-01-29 06:38:02 -08:00
Compare commits
10 Commits
2a65f024ef
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8249479622 | ||
|
|
65ad8bf5d3 | ||
|
|
dba33d6681 | ||
|
|
88e5be6e4b | ||
|
|
2f9037b24e | ||
|
|
0931c8fc67 | ||
|
|
3c2016f645 | ||
|
|
4fdd37d875 | ||
|
|
9d8c46566b | ||
|
|
707a1a22e2 |
@@ -16,3 +16,69 @@ GRANT ALL PRIVILEGES ON prospectwith.* TO 'power'@'localhost' WITH GRANT OPTION;
|
|||||||
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; # Create user
|
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
|
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
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ CHEATSHEET C#
|
|||||||
string newStr = oldStr.Replace("old","new");
|
string newStr = oldStr.Replace("old","new");
|
||||||
|
|
||||||
//IndexOf
|
//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
|
//Returns -1 if the string is not found
|
||||||
String.IndexOf(val, start, num)
|
String.IndexOf(val, start, num)
|
||||||
val - string to search for
|
val - string to search for
|
||||||
@@ -102,7 +102,7 @@ CHEATSHEET C#
|
|||||||
String.Split(Char[]);
|
String.Split(Char[]);
|
||||||
|
|
||||||
//ToCharArray
|
//ToCharArray
|
||||||
//Places selected characteres in a string in a char array
|
//Places selected characters in a string in a char array
|
||||||
String str = "AaBbCcDd";
|
String str = "AaBbCcDd";
|
||||||
//create array of 8 vowels
|
//create array of 8 vowels
|
||||||
var chars = str.ToCharArray();
|
var chars = str.ToCharArray();
|
||||||
@@ -135,7 +135,7 @@ CHEATSHEET C#
|
|||||||
|
|
||||||
6.1 TimeSpan Constructor
|
6.1 TimeSpan Constructor
|
||||||
|
|
||||||
TimpeSpan(hour, minute, sec)
|
TimeSpan(hour, minute, sec)
|
||||||
|
|
||||||
TimeSpan timeS = new TimeSpan(10, 14, 50);
|
TimeSpan timeS = new TimeSpan(10, 14, 50);
|
||||||
TimeSpan timeS_Hours = TimeSpan.FromDays(3640);
|
TimeSpan timeS_Hours = TimeSpan.FromDays(3640);
|
||||||
@@ -144,8 +144,8 @@ CHEATSHEET C#
|
|||||||
|
|
||||||
Format item syntax: {index[,alignment][:format string]}
|
Format item syntax: {index[,alignment][:format string]}
|
||||||
index - Specifies element in list of values to which format is applied
|
index - Specifies element in list of values to which format is applied
|
||||||
aligment - Indicates minimun width (in characters) to display value
|
alignment - Indicates minimum width (in characters) to display value
|
||||||
format string - Contains the code which specififes the format of the displayed value
|
format string - Contains the code which specifies the format of the displayed value
|
||||||
|
|
||||||
7.1 Numeric
|
7.1 Numeric
|
||||||
|
|
||||||
@@ -293,7 +293,7 @@ CHEATSHEET C#
|
|||||||
[access modifier] className (parameters) [:initializer]
|
[access modifier] className (parameters) [:initializer]
|
||||||
|
|
||||||
initializer -base calls constructor in base class.
|
initializer -base calls constructor in base class.
|
||||||
this calls constuctor within class.
|
this calls constructor within class.
|
||||||
|
|
||||||
public class nameClass : Initializer {
|
public class nameClass : Initializer {
|
||||||
public className(dataType param1 , dataType param2, ...) : base(param1, param2)
|
public className(dataType param1 , dataType param2, ...) : base(param1, param2)
|
||||||
@@ -313,8 +313,8 @@ CHEATSHEET C#
|
|||||||
abstract – must be implemented by subclass
|
abstract – must be implemented by subclass
|
||||||
|
|
||||||
Passing parameters:
|
Passing parameters:
|
||||||
1. By default, parametres are passed by value
|
1. By default, parameters are passed by value
|
||||||
2. Passing by reference: ref, in and out modifers
|
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
|
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
|
||||||
|
|
||||||
|
|||||||
@@ -524,14 +524,14 @@ Cyan='\033[0;36m' # Cyan
|
|||||||
White='\033[0;97m' # White
|
White='\033[0;97m' # White
|
||||||
|
|
||||||
# Additional colors
|
# Additional colors
|
||||||
LGrey='\033[0;37m' # Ligth Gray
|
LGrey='\033[0;37m' # Light Gray
|
||||||
DGrey='\033[0;90m' # Dark Gray
|
DGrey='\033[0;90m' # Dark Gray
|
||||||
LRed='\033[0;91m' # Ligth Red
|
LRed='\033[0;91m' # Light Red
|
||||||
LGreen='\033[0;92m' # Ligth Green
|
LGreen='\033[0;92m' # Light Green
|
||||||
LYellow='\033[0;93m'# Ligth Yellow
|
LYellow='\033[0;93m'# Light Yellow
|
||||||
LBlue='\033[0;94m' # Ligth Blue
|
LBlue='\033[0;94m' # Light Blue
|
||||||
LPurple='\033[0;95m'# Light Purple
|
LPurple='\033[0;95m'# Light Purple
|
||||||
LCyan='\033[0;96m' # Ligth Cyan
|
LCyan='\033[0;96m' # Light Cyan
|
||||||
|
|
||||||
|
|
||||||
# Bold
|
# Bold
|
||||||
|
|||||||
@@ -397,8 +397,8 @@ d, t := doubleAndTriple(5)
|
|||||||
_, t := doubleAndTriple(3)
|
_, t := doubleAndTriple(3)
|
||||||
// t = 9
|
// t = 9
|
||||||
|
|
||||||
// Functions can defer commands. Defered commands are
|
// Functions can defer commands. Deferred commands are
|
||||||
// runned in a stack order after the execution and
|
// ran in a stack order after the execution and
|
||||||
// returning of a function
|
// returning of a function
|
||||||
var aux = 0
|
var aux = 0
|
||||||
|
|
||||||
@@ -488,7 +488,7 @@ person3.Age // 0
|
|||||||
|
|
||||||
## Maps
|
## Maps
|
||||||
|
|
||||||
Maps are data structures that holds values assigneds to a key.
|
Maps are data structures that holds values assigned to a key.
|
||||||
|
|
||||||
```go
|
```go
|
||||||
// Declaring a map
|
// Declaring a map
|
||||||
@@ -508,7 +508,7 @@ newYork // "EUA"
|
|||||||
// Delete
|
// Delete
|
||||||
delete(cities, "NY")
|
delete(cities, "NY")
|
||||||
|
|
||||||
// Check if a key is setted
|
// Check if a key is set
|
||||||
value, ok := cities["NY"]
|
value, ok := cities["NY"]
|
||||||
ok // false
|
ok // false
|
||||||
value // ""
|
value // ""
|
||||||
|
|||||||
@@ -308,7 +308,7 @@ for(dataType item : array) {
|
|||||||
//Declare a variable, object name
|
//Declare a variable, object name
|
||||||
String s;
|
String s;
|
||||||
|
|
||||||
//Invoke a contructor to create an object
|
//Invoke a constructor to create an object
|
||||||
s = new String ("Hello World");
|
s = new String ("Hello World");
|
||||||
|
|
||||||
//Invoke an instance method that operates on the object's value
|
//Invoke an instance method that operates on the object's value
|
||||||
|
|||||||
@@ -95,3 +95,9 @@ arr.reduce(callback[, initialValue]) // Apply a function against
|
|||||||
arr.reduceRight(callback[, initialValue]) // Apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
|
arr.reduceRight(callback[, initialValue]) // Apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
|
||||||
arr.some(callback[, initialValue]) // Returns true if at least one element in this array satisfies the provided testing function.
|
arr.some(callback[, initialValue]) // Returns true if at least one element in this array satisfies the provided testing function.
|
||||||
arr.values() // Returns a new Array Iterator object that contains the values for each index in the array.
|
arr.values() // Returns a new Array Iterator object that contains the values for each index in the array.
|
||||||
|
|
||||||
|
// String methods
|
||||||
|
String.charAt(index) // Returns the character at the specified index in a string.
|
||||||
|
String.indexOf(character) // Returns the index of the first occurrence of a specified value in a string.
|
||||||
|
String.substring(starting_index, ending_index) // Returns a new string that is a subset of the original string.
|
||||||
|
String.substring(starting_index) // Returns a substring from starting index to last index of string.
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
// Exit the file, string inside get's echo'ed
|
// Exit the file, string inside get's echo'ed
|
||||||
die("This file is not ment to be ran. ¯\_(ツ)_/¯");
|
die("This file is not meant to be ran. ¯\_(ツ)_/¯");
|
||||||
exit("This file is not ment to be ran. ¯\_(ツ)_/¯");
|
exit("This file is not meant to be ran. ¯\_(ツ)_/¯");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Printing
|
* Printing
|
||||||
@@ -17,7 +17,7 @@ var_dump($arr); // Print anything, with type hints for any value and sizes
|
|||||||
$string = 'Awesome cheatsheets';
|
$string = 'Awesome cheatsheets';
|
||||||
|
|
||||||
str_contains($string, 'cheat'); // Find if the string contains the specified string (PHP >= 8.0)
|
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
|
strcmp($string, 'Awesome cheatsheets'); // Compare two strings
|
||||||
strpos($string, 'a', 0); // Get position in the string
|
strpos($string, 'a', 0); // Get position in the string
|
||||||
str_split($string, 2); // Split the string
|
str_split($string, 2); // Split the string
|
||||||
@@ -541,7 +541,7 @@ u Pattern is treated as UTF-8
|
|||||||
\w Any "word" character (a-z 0-9 _)
|
\w Any "word" character (a-z 0-9 _)
|
||||||
\W Any non "word" character
|
\W Any non "word" character
|
||||||
\s Whitespace (space, tab CRLF)
|
\s Whitespace (space, tab CRLF)
|
||||||
\S Any non whitepsace character
|
\S Any non whitespace character
|
||||||
\d Digits (0-9)
|
\d Digits (0-9)
|
||||||
\D Any non digit character
|
\D Any non digit character
|
||||||
. (Period) - Any character except newline
|
. (Period) - Any character except newline
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
* Python is an interpreted, high-level and general-purpose, dynamically typed programming language
|
* Python is an interpreted, high-level and general-purpose, dynamically typed programming language
|
||||||
|
|
||||||
* It is seen as an object-oriented, modular scripting language.
|
* It is also Object oriented, modular oriented and a scripting language.
|
||||||
|
|
||||||
* In Python, everything is considered as an object.
|
* In Python, everything is considered as an Object.
|
||||||
|
|
||||||
* A python file has an extension of .py
|
* A python file has an extension of .py
|
||||||
|
|
||||||
* Python follows indentation to separate code blocks instead of using flower/curly brackets ({}).
|
* Python follows Indentation to separate code blocks instead of flower brackets({}).
|
||||||
|
|
||||||
* We can run a python file by the following command in cmd(Windows) or shell(mac/linux).
|
* We can run a python file by the following command in cmd(Windows) or shell(mac/linux).
|
||||||
|
|
||||||
@@ -71,7 +71,7 @@
|
|||||||
| import | import libraries/modules/packages | import |
|
| import | import libraries/modules/packages | import |
|
||||||
| from | import specific function/classes from modules/packages | import |
|
| from | import specific function/classes from modules/packages | import |
|
||||||
| try | this block will be tried to get executed | exception handling |
|
| try | this block will be tried to get executed | exception handling |
|
||||||
| except | is any exception/error has occured it'll be executed | 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 |
|
| finally | It'll be executed no matter exception occurs or not | exception handling |
|
||||||
| raise | throws any specific error/exception | exception handling |
|
| raise | throws any specific error/exception | exception handling |
|
||||||
| assert | throws an AssertionError if condition is false | exception handling |
|
| assert | throws an AssertionError if condition is false | exception handling |
|
||||||
@@ -138,9 +138,11 @@
|
|||||||
thislist = ["apple", "banana", "cherry"]
|
thislist = ["apple", "banana", "cherry"]
|
||||||
```
|
```
|
||||||
|
|
||||||
- List items are ordered, changeable / mutable, and allow duplicate values. We can change, add, and remove items in a list after it has been created.
|
- List items are ordered, changeable, and allow duplicate values.
|
||||||
|
|
||||||
- List items are zero-indexed. The first item has index `[0]`, the second item has index `[1]` etc.
|
- List items are indexed, the first item has index `[0]`, the second item has index `[1]` etc.
|
||||||
|
|
||||||
|
- The list is changeable, meaning that we can change, add, and remove items in a list after it has been created.
|
||||||
|
|
||||||
- To determine how many items a list has, use the `len()` function.
|
- To determine how many items a list has, use the `len()` function.
|
||||||
|
|
||||||
@@ -148,18 +150,17 @@ thislist = ["apple", "banana", "cherry"]
|
|||||||
```python
|
```python
|
||||||
list1 = ["abc", 34, True, 40, "male"]
|
list1 = ["abc", 34, True, 40, "male"]
|
||||||
```
|
```
|
||||||
- Lists can either be created as above or using the list() constructor as follows:
|
- It is also possible to use the list() constructor when creating a new list
|
||||||
```python
|
```python
|
||||||
thislist = list(("apple", "banana", "cherry")) # note the double round-brackets
|
thislist = list(("apple", "banana", "cherry")) # note the double round-brackets
|
||||||
```
|
```
|
||||||
|
- pop() function removes the last value in the given list by default.
|
||||||
- pop() function removes and returns the last value in the given list by default. Should a different index be added in the brackets, the element with that index will be removed and returned.
|
|
||||||
|
|
||||||
```python
|
```python
|
||||||
thislist = ["apple", "banana", "cherry"]
|
thislist = ["apple", "banana", "cherry"]
|
||||||
|
|
||||||
print(thislist.pop()) # cherry
|
print(thislist.pop()) # cherry
|
||||||
print(thislist.pop(0)) # apple
|
print(thislist.pop(0)) #apple
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -173,11 +174,11 @@ thislist = list(("apple", "banana", "cherry")) # note the double round-brackets
|
|||||||
```python
|
```python
|
||||||
thistuple = ("apple", "banana", "cherry")
|
thistuple = ("apple", "banana", "cherry")
|
||||||
```
|
```
|
||||||
|
- Tuple items are ordered, unchangeable, and allow duplicate values.
|
||||||
- Tuple items are ordered, unchangeable / immutable, and allow duplicate values. We cannot change, add or remove items after the tuple has been created.
|
|
||||||
- Tuple items are indexed, the first item has index `[0]`, the second item has index `[1]` etc.
|
- Tuple items are indexed, the first item has index `[0]`, the second item has index `[1]` etc.
|
||||||
- When we say that tuples are ordered, it means that the items have a defined order, and that order will not change.
|
- When we say that tuples are ordered, it means that the items have a defined order, and that order will not change.
|
||||||
|
|
||||||
|
- Tuples are unchangeable, meaning that we cannot change, add or remove items after the tuple has been created.
|
||||||
- Since tuple are indexed, tuples can have items with the same value:
|
- Since tuple are indexed, tuples can have items with the same value:
|
||||||
- Tuples allow duplicate values:
|
- Tuples allow duplicate values:
|
||||||
```python
|
```python
|
||||||
@@ -186,18 +187,18 @@ thistuple = ("apple", "banana", "cherry", "apple", "cherry")
|
|||||||
- To determine how many items a tuple has, use the `len()`function:
|
- To determine how many items a tuple has, use the `len()`function:
|
||||||
```python
|
```python
|
||||||
thistuple = ("apple", "banana", "cherry")
|
thistuple = ("apple", "banana", "cherry")
|
||||||
print(len(thistuple)) # 3
|
print(len(thistuple))
|
||||||
```
|
```
|
||||||
- To create a tuple with only one item, you have to *add a comma after the item*, otherwise Python will not recognize it as a tuple.
|
- To create a tuple with only one item, you have to add a comma after the item, otherwise Python will not recognize it as a tuple.
|
||||||
```python
|
```python
|
||||||
thistuple = ("apple",)
|
thistuple = ("apple",)
|
||||||
print(type(thistuple)) # tuple
|
print(type(thistuple))
|
||||||
|
|
||||||
# NOT a tuple
|
# NOT a tuple
|
||||||
thistuple = ("apple")
|
thistuple = ("apple")
|
||||||
print(type(thistuple)) # string
|
print(type(thistuple))
|
||||||
```
|
```
|
||||||
- It is also possible to use the tuple() constructor to make a tuple:
|
- It is also possible to use the tuple() constructor to make a tuple.
|
||||||
```python
|
```python
|
||||||
|
|
||||||
thistuple = tuple(("apple", "banana", "cherry")) # note the double round-brackets
|
thistuple = tuple(("apple", "banana", "cherry")) # note the double round-brackets
|
||||||
@@ -205,21 +206,24 @@ print(thistuple)
|
|||||||
```
|
```
|
||||||
|
|
||||||
### Set
|
### Set
|
||||||
- Set is a collection which is unordered and unindexed. There can be no duplicate members.
|
- Set is a collection which is unordered and unindexed. No duplicate members.
|
||||||
- Since sets are unordered and unindexed, the items in a set do not have a defined order. Set items can appear in a different order every time you use them, and cannot be referred to by index or key.
|
- A set is a collection which is both unordered and unindexed.
|
||||||
- Duplicate values will be ignored.
|
|
||||||
|
|
||||||
```python
|
```python
|
||||||
thisset = {"apple", "banana", "cherry"}
|
thisset = {"apple", "banana", "cherry"}
|
||||||
```
|
```
|
||||||
|
- Set items are unordered, unchangeable, and do not allow duplicate values.
|
||||||
|
- Unordered means that the items in a set do not have a defined order.
|
||||||
|
|
||||||
|
- Set items can appear in a different order every time you use them, and cannot be referred to by index or key.
|
||||||
|
|
||||||
|
- Sets are unchangeable, meaning that we cannot change the items after the set has been created.
|
||||||
|
- Duplicate values will be ignored.
|
||||||
- To determine how many items a set has, use the `len()` method.
|
- To determine how many items a set has, use the `len()` method.
|
||||||
```python
|
```python
|
||||||
thisset = {"apple", "banana", "cherry"}
|
thisset = {"apple", "banana", "cherry"}
|
||||||
|
|
||||||
print(len(thisset)) # 3
|
print(len(thisset))
|
||||||
```
|
```
|
||||||
|
|
||||||
- Set items can be of any data type:
|
- Set items can be of any data type:
|
||||||
```python
|
```python
|
||||||
set1 = {"apple", "banana", "cherry"}
|
set1 = {"apple", "banana", "cherry"}
|
||||||
@@ -227,29 +231,25 @@ set2 = {1, 5, 7, 9, 3}
|
|||||||
set3 = {True, False, False}
|
set3 = {True, False, False}
|
||||||
set4 = {"abc", 34, True, 40, "male"}
|
set4 = {"abc", 34, True, 40, "male"}
|
||||||
```
|
```
|
||||||
|
- It is also possible to use the `set()` constructor to make a set.
|
||||||
- It is also possible to use the `set()` constructor to make a set:
|
|
||||||
```python
|
```python
|
||||||
thisset = set(("apple", "banana", "cherry")) # note the double round-brackets
|
thisset = set(("apple", "banana", "cherry")) # note the double round-brackets
|
||||||
```
|
```
|
||||||
|
|
||||||
- frozenset() is just an immutable version of Set. While elements of a set can be modified at any time, elements of the frozen set remain the same after creation.
|
- frozenset() is just an immutable version of Set. While elements of a set can be modified at any time, elements of the frozen set remain the same after creation.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
set1 = {"apple", "banana", "cherry"}
|
set1 = {"apple", "banana", "cherry"}
|
||||||
frzset=frozenset(set1)
|
frzset=frozenset(set1)
|
||||||
print(frzset) # {"apple", "banana", "cherry"}
|
print(frzset)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### Dictionary
|
### Dictionary
|
||||||
|
|
||||||
- Dictionary is a collection which is unordered and changeable. There can be no duplicate members.
|
- Dictionary is a collection which is unordered and changeable. No duplicate members.
|
||||||
- Dictionaries are used to store data values in key:value pairs.
|
- Dictionaries are used to store data values in key:value pairs.
|
||||||
- Dictionaries cannot have two items with the same key.
|
|
||||||
- Dictionaries are written with curly brackets, and have keys and values:
|
- Dictionaries are written with curly brackets, and have keys and values:
|
||||||
|
|
||||||
```python
|
```python
|
||||||
thisdict = {
|
thisdict = {
|
||||||
"brand": "Ford",
|
"brand": "Ford",
|
||||||
@@ -257,7 +257,6 @@ thisdict = {
|
|||||||
"year": 1964
|
"year": 1964
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
- Dictionary items are presented in key:value pairs, and can be referred to by using the key name.
|
- Dictionary items are presented in key:value pairs, and can be referred to by using the key name.
|
||||||
```python
|
```python
|
||||||
thisdict = {
|
thisdict = {
|
||||||
@@ -265,17 +264,15 @@ thisdict = {
|
|||||||
"model": "Mustang",
|
"model": "Mustang",
|
||||||
"year": 1964
|
"year": 1964
|
||||||
}
|
}
|
||||||
print(thisdict["brand"]) # Ford
|
print(thisdict["brand"])
|
||||||
```
|
```
|
||||||
|
- Dictionaries are changeable, meaning that we can change, add or remove items after the dictionary has been created.
|
||||||
- Dictionaries are changeable / mutable, meaning that we can change, add or remove items after the dictionary has been created.
|
- Dictionaries cannot have two items with the same key.
|
||||||
- Duplicate values will overwrite existing values.
|
- Duplicate values will overwrite existing values.
|
||||||
- To determine how many items a dictionary has, use the `len()` function.
|
- To determine how many items a dictionary has, use the `len()` function.
|
||||||
-
|
|
||||||
```python
|
```python
|
||||||
print(len(thisdict)) # 3
|
print(len(thisdict))
|
||||||
```
|
```
|
||||||
|
|
||||||
- The values in dictionary items can be of any data type
|
- The values in dictionary items can be of any data type
|
||||||
```python
|
```python
|
||||||
thisdict = {
|
thisdict = {
|
||||||
@@ -297,8 +294,8 @@ thisdict = {
|
|||||||
|
|
||||||
x = car.pop("model")
|
x = car.pop("model")
|
||||||
|
|
||||||
print(x) # Mustang
|
print(x)# Mustang
|
||||||
print(car) # {'brand': 'Ford', 'year': 1964}
|
print(car)#{'brand': 'Ford', 'year': 1964}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
@@ -307,13 +304,12 @@ thisdict = {
|
|||||||
|
|
||||||
```python
|
```python
|
||||||
if condition:
|
if condition:
|
||||||
pass # Code to execute if condition is true.
|
pass
|
||||||
elif condition2:
|
elif condition2:
|
||||||
pass # Code to execute if condition2 is true.
|
pass
|
||||||
else:
|
else:
|
||||||
pass # Code to execute if neither condition nor condition2 is true.
|
pass
|
||||||
```
|
```
|
||||||
|
|
||||||
### Loops
|
### Loops
|
||||||
|
|
||||||
Python has two primitive loop commands:
|
Python has two primitive loop commands:
|
||||||
@@ -322,58 +318,18 @@ thisdict = {
|
|||||||
|
|
||||||
#### While loop
|
#### While loop
|
||||||
- With the `while` loop we can execute a set of statements as long as a condition is true.
|
- With the `while` loop we can execute a set of statements as long as a condition is true.
|
||||||
|
|
||||||
- Example: Print i as long as i is less than 6
|
- Example: Print i as long as i is less than 6
|
||||||
```python
|
```python
|
||||||
i = 1
|
i = 1
|
||||||
while i < 6:
|
while i < 6:
|
||||||
print(i)
|
print(i)
|
||||||
i += 1
|
i += 1
|
||||||
|
|
||||||
# Output: 1, 2, 3, 4, 5
|
|
||||||
```
|
```
|
||||||
|
- The while loop requires relevant variables to be ready, in this example we need to define an indexing variable, i, which we set to 1.
|
||||||
|
- With the `break` statement we can stop the loop even if the while condition is true
|
||||||
|
- With the continue statement we can stop the current iteration, and continue with the next.
|
||||||
|
|
||||||
- The while loop requires relevant variables to be ready. In this example we need to define an indexing variable, i, which we set to 1. This has to be done before starting with the loop.
|
- With the else statement we can run a block of code once when the condition no longer is true.
|
||||||
|
|
||||||
- With the `break` statement we can stop the loop even if the while condition is true.
|
|
||||||
|
|
||||||
- Example: Print i as long as i is less than 6
|
|
||||||
```python
|
|
||||||
i = 1
|
|
||||||
while True:
|
|
||||||
if i < 6:
|
|
||||||
print(i)
|
|
||||||
i += 1
|
|
||||||
else:
|
|
||||||
break
|
|
||||||
# Output: 1, 2, 3, 4, 5
|
|
||||||
```
|
|
||||||
|
|
||||||
- With the `continue` statement we can stop the current iteration, and continue with the next.
|
|
||||||
|
|
||||||
- Example: Print i as long as it is less than 6 and not equal to 3.
|
|
||||||
```python
|
|
||||||
i = 0
|
|
||||||
while i < 6:
|
|
||||||
i += 1
|
|
||||||
if i == 3:
|
|
||||||
continue
|
|
||||||
else:
|
|
||||||
print(i)
|
|
||||||
# Output: 1, 2, 4, 5
|
|
||||||
```
|
|
||||||
|
|
||||||
- With the `else` statement we can run a block of code once when the condition no longer is true.
|
|
||||||
```python
|
|
||||||
i = 1
|
|
||||||
while i < 6:
|
|
||||||
print(i)
|
|
||||||
i += 1
|
|
||||||
else:
|
|
||||||
print("The loop is finished")
|
|
||||||
|
|
||||||
# Output: 1, 2, 3, 4, 5, The loop is finished
|
|
||||||
```
|
|
||||||
|
|
||||||
#### For loop
|
#### For loop
|
||||||
- A for loop is used for iterating over a sequence (that is either a list, a tuple, a dictionary, a set, or a string).
|
- A for loop is used for iterating over a sequence (that is either a list, a tuple, a dictionary, a set, or a string).
|
||||||
@@ -384,22 +340,16 @@ else:
|
|||||||
```python
|
```python
|
||||||
fruits = ["apple", "banana", "cherry"]
|
fruits = ["apple", "banana", "cherry"]
|
||||||
for x in fruits:
|
for x in fruits:
|
||||||
print(x) # apple banana cherry
|
print(x)
|
||||||
```
|
```
|
||||||
- The for loop does not require an indexing variable to set beforehand.
|
- The for loop does not require an indexing variable to set beforehand.
|
||||||
|
|
||||||
- To loop through a set of code a specified number of times, we can use the range() function.
|
- To loop through a set of code a specified number of times, we can use the range() function.
|
||||||
- The range function returns a list of integers starting at zero or the starting value up to but not including the ending value, in increments of 1 unless otherwise defined:
|
- The range() function returns a sequence of numbers, starting from 0 by default, and increments by 1 (by default), and ends at a specified number.
|
||||||
|
- The range() function defaults to increment the sequence by 1, however it is possible to specify the increment value by adding a third parameter: range(2, 30, 3).
|
||||||
```python
|
|
||||||
range(4) # [0, 1, 2, 3]
|
|
||||||
range(2, 4) # [2, 3]
|
|
||||||
range(1, 10, 2) # [1, 3, 5, 7, 9]
|
|
||||||
```
|
|
||||||
|
|
||||||
- The else keyword in a for loop specifies a block of code to be executed when the loop is finished.
|
- The else keyword in a for loop specifies a block of code to be executed when the loop is finished.
|
||||||
|
A nested loop is a loop inside a loop.
|
||||||
|
|
||||||
- A nested loop is a loop inside a loop. The "inner loop" will be executed one time for each iteration of the "outer loop":
|
- The "inner loop" will be executed one time for each iteration of the "outer loop":
|
||||||
|
|
||||||
```python
|
```python
|
||||||
adj = ["red", "big", "tasty"]
|
adj = ["red", "big", "tasty"]
|
||||||
@@ -409,7 +359,6 @@ for x in adj:
|
|||||||
for y in fruits:
|
for y in fruits:
|
||||||
print(x, y)
|
print(x, y)
|
||||||
```
|
```
|
||||||
|
|
||||||
- for loops cannot be empty, but if you for some reason have a for loop with no content, put in the pass statement to avoid getting an error.
|
- for loops cannot be empty, but if you for some reason have a for loop with no content, put in the pass statement to avoid getting an error.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
@@ -428,7 +377,6 @@ def function_name():
|
|||||||
function_name()
|
function_name()
|
||||||
```
|
```
|
||||||
|
|
||||||
* A function must either return a value or have some content.
|
|
||||||
* We need not to specify the return type of the function.
|
* 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.
|
* We can return any datatype.
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ cat /proc/<process_id>/maps # Show the current virtual memory usage of a Linux
|
|||||||
ip r # Display ip of the server
|
ip r # Display ip of the server
|
||||||
|
|
||||||
lsof -i :9000 # List process running on port 9000
|
lsof -i :9000 # List process running on port 9000
|
||||||
|
kill -9 $(lsof -t -i:PORT) # Kill the process running on whichever port specified
|
||||||
|
|
||||||
journalctl -u minio.service -n 100 --no-pager # List last 100 logs for specific service
|
journalctl -u minio.service -n 100 --no-pager # List last 100 logs for specific service
|
||||||
|
|
||||||
|
|||||||
@@ -20,13 +20,15 @@ e jump to end of words (punctuation considered words)
|
|||||||
E jump to end of words (no punctuation)
|
E jump to end of words (no punctuation)
|
||||||
b jump backward by words (punctuation considered words)
|
b jump backward by words (punctuation considered words)
|
||||||
B jump backward by words (no punctuation)
|
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
|
0 (zero) start of line
|
||||||
^ first non-blank character of line
|
^ first non-blank character of line
|
||||||
$ end of line
|
$ jump to the end of the line
|
||||||
- move line upwards, on the first non blank character
|
g_ jump to the last non-blank character of the line
|
||||||
+ move line downwards, on the first non blank character
|
- move line upwards, on the first non-blank character
|
||||||
<enter> move line downwards, 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
|
gg go to first line
|
||||||
G go to last line
|
G go to last line
|
||||||
ngg go to line n
|
ngg go to line n
|
||||||
@@ -38,10 +40,6 @@ nG go To line n
|
|||||||
} move the cursor a paragraph forwards
|
} move the cursor a paragraph forwards
|
||||||
]] move the cursor a section forwards or to the next {
|
]] move the cursor a section forwards or to the next {
|
||||||
[[ move the cursor a section backwards or the previous {
|
[[ 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.
|
H move the cursor to the top of the screen.
|
||||||
M move the cursor to the middle of the screen.
|
M move the cursor to the middle of the screen.
|
||||||
L move the cursor to the bottom 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'
|
Fx search line backward for 'x'
|
||||||
tx search line forward before 'x'
|
tx search line forward before 'x'
|
||||||
Tx search line backward 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
|
ma make a bookmark named a at the current cursor position
|
||||||
`a go to position of bookmark a
|
`a go to position of bookmark a
|
||||||
'a go to the line with 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 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
|
# INSERT MODE
|
||||||
@@ -70,10 +85,13 @@ ma make a bookmark named a at the current cursor position
|
|||||||
|
|
||||||
i start insert mode at cursor
|
i start insert mode at cursor
|
||||||
I insert at the beginning of the line
|
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 after the cursor
|
||||||
A append at the end of the line
|
A append at the end of the line
|
||||||
o open (append) blank line below current line
|
o open (append) blank line below current line
|
||||||
O open blank line above 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
|
Esc exit insert mode
|
||||||
|
|
||||||
|
|
||||||
@@ -84,10 +102,25 @@ Esc exit insert mode
|
|||||||
|
|
||||||
r replace a single character (does not use insert mode)
|
r replace a single character (does not use insert mode)
|
||||||
R enter Insert mode, replacing characters rather than inserting
|
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
|
cc change (replace) an entire line
|
||||||
cw change (replace) to the end of word
|
cw change (replace) to the end of word (same as ce)
|
||||||
C change (replace) to the end of line
|
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)
|
ct' change (replace) until the ' character (can change ' for any character)
|
||||||
s delete character at cursor and substitute text
|
s delete character at cursor and substitute text
|
||||||
S delete line at cursor and substitute text (same as cc)
|
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 uppercase until end of line
|
||||||
gu$ make lowercase until end of line
|
gu$ make lowercase until end of line
|
||||||
>> indent line one column to right
|
>> indent line one column to right
|
||||||
|
>i{ indent everything in the {}
|
||||||
<< indent line one column to left
|
<< indent line one column to left
|
||||||
== auto-indent current line
|
== auto-indent current line
|
||||||
ddp swap current line with next
|
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 [name] insert the file [name] below the cursor.
|
||||||
:r !{cmd} execute {cmd} and insert its standard output 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
|
# DELETING TEXT
|
||||||
@@ -118,10 +153,15 @@ ddkP swap current line with previous
|
|||||||
|
|
||||||
x delete current character
|
x delete current character
|
||||||
X delete previous 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
|
dd delete (cut) a line
|
||||||
dt' delete until the next ' character on the line (replace ' by any character)
|
dt' delete (cut) until the next ' character on the line (replace ' by any character)
|
||||||
D delete from cursor to end of line
|
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
|
:[range]d delete [range] lines
|
||||||
|
|
||||||
|
|
||||||
@@ -136,6 +176,10 @@ yy yank (copy) a line
|
|||||||
y$ yank to end of line
|
y$ yank to end of line
|
||||||
p put (paste) the clipboard after cursor/current line
|
p put (paste) the clipboard after cursor/current line
|
||||||
P put (paste) before 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
|
:set paste avoid unexpected effects in pasting
|
||||||
:registers display the contents of all registers
|
:registers display the contents of all registers
|
||||||
"xyw yank word into register x
|
"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
|
"xgP just like "P", but leave the cursor just after the new text
|
||||||
:[line]put x put the text from register x after [line]
|
:[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
|
# MACROS
|
||||||
@@ -157,6 +207,7 @@ qa start recording macro 'a'
|
|||||||
q end recording macro
|
q end recording macro
|
||||||
@a replay macro 'a'
|
@a replay macro 'a'
|
||||||
@: replay last command
|
@: replay last command
|
||||||
|
@@ repeat macro
|
||||||
|
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
@@ -172,9 +223,11 @@ CTRL-v start visual block mode
|
|||||||
O move to other corner of block
|
O move to other corner of block
|
||||||
aw mark a word
|
aw mark a word
|
||||||
ab a () block (with braces)
|
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
|
iB inner {} block
|
||||||
|
it inner <> block
|
||||||
Esc exit visual mode
|
Esc exit visual mode
|
||||||
|
|
||||||
VISUAL MODE COMMANDS
|
VISUAL MODE COMMANDS
|
||||||
@@ -194,6 +247,7 @@ v% selects matching parenthesis
|
|||||||
vi{ selects matching curly brace
|
vi{ selects matching curly brace
|
||||||
vi" selects text between double quotes
|
vi" selects text between double quotes
|
||||||
vi' selects text between single quotes
|
vi' selects text between single quotes
|
||||||
|
gv reselect the last selected area
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# SPELLING
|
# SPELLING
|
||||||
@@ -283,7 +337,6 @@ CTRL-w < increase window width
|
|||||||
CTRL-w > decrease window width
|
CTRL-w > decrease window width
|
||||||
CTRL-w = equal window
|
CTRL-w = equal window
|
||||||
CTRL-w o close other windows
|
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
|
% 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
|
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
|
'' 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-o move to previous position you were at
|
||||||
CTRL-i move to more recent 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)
|
||||||
|
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|||||||
Reference in New Issue
Block a user