initial commit
This commit is contained in:
commit
214516ac67
190
.zsh/completions/_pastebin_client
Normal file
190
.zsh/completions/_pastebin_client
Normal file
@ -0,0 +1,190 @@
|
|||||||
|
#compdef pastebin_client.sh
|
||||||
|
|
||||||
|
_pastebin_client() {
|
||||||
|
local context state line
|
||||||
|
typeset -A opt_args
|
||||||
|
API_URL="https://paste.priet.us"
|
||||||
|
|
||||||
|
# List of main subcommands
|
||||||
|
local -a subcommands
|
||||||
|
subcommands=(
|
||||||
|
'login:Log in with username and password'
|
||||||
|
'create:Create a paste from STDIN'
|
||||||
|
'upload:Upload a file'
|
||||||
|
'list:List all pastes with optional filters'
|
||||||
|
'view:Show the content of a paste'
|
||||||
|
'view_raw:Show raw content of a paste'
|
||||||
|
'delete:Delete a paste'
|
||||||
|
'register:Register a new user'
|
||||||
|
'details:Show details about the logged-in user'
|
||||||
|
'search:Search for pastes by a search term'
|
||||||
|
'favorite:Add a paste to favorites'
|
||||||
|
'unfavorite:Remove a paste from favorites'
|
||||||
|
'download:Download the content of a paste'
|
||||||
|
'download_all:Download all pastes'
|
||||||
|
'download_favorites:Download all favorite pastes'
|
||||||
|
'list_favorites:List all favorite pastes'
|
||||||
|
'list_pastes:List all pastes of current user'
|
||||||
|
'shared_with_others:List pastes shared with other users'
|
||||||
|
'shared_with_me:List pastes others shared with me'
|
||||||
|
'share:Share a paste with another user'
|
||||||
|
'unshare:Unshare a paste with a user'
|
||||||
|
'edit:Edit paste from command line and upload changes to the server'
|
||||||
|
'remove_gps: remove gps metadata from pastte id'
|
||||||
|
)
|
||||||
|
|
||||||
|
# Define the autocompletion logic
|
||||||
|
_arguments -C \
|
||||||
|
'1:subcommand:->cmd' \
|
||||||
|
'*::argument:->args'
|
||||||
|
|
||||||
|
case $state in
|
||||||
|
cmd)
|
||||||
|
# Display available subcommands
|
||||||
|
_describe -t subcommands 'subcommand' subcommands
|
||||||
|
;;
|
||||||
|
args)
|
||||||
|
case $words[1] in
|
||||||
|
login)
|
||||||
|
# login <username> <password>
|
||||||
|
_arguments \
|
||||||
|
'1:Username:_default' \
|
||||||
|
'2:Password:_default'
|
||||||
|
;;
|
||||||
|
create)
|
||||||
|
_arguments \
|
||||||
|
'1:Expire after 1 day:_expire_options' \
|
||||||
|
'2:Private:_private_options' # ✅ Referencia a listas de valores
|
||||||
|
;;
|
||||||
|
remove_gps)
|
||||||
|
# remove_gps <paste_id>
|
||||||
|
_dynamic_paste_ids
|
||||||
|
;;
|
||||||
|
# upload <file> <language>
|
||||||
|
upload)
|
||||||
|
_arguments \
|
||||||
|
'1:File:_files' \
|
||||||
|
'2:Expire after 1 day:_expire_options' \
|
||||||
|
'3:Private:_private_options' # ✅ Referencia a listas de valores
|
||||||
|
;;
|
||||||
|
list)
|
||||||
|
# list options: --type, --from, --to
|
||||||
|
_arguments \
|
||||||
|
'--type=[Filter by paste type]:type:(Text Image Video)' \
|
||||||
|
'--from=[Start date (YYYY-MM-DD)]' \
|
||||||
|
'--to=[End date (YYYY-MM-DD)]'
|
||||||
|
;;
|
||||||
|
view|view_raw|delete|favorite|unfavorite|download|edit)
|
||||||
|
# view <paste_id>, view_raw <paste_id>, delete <paste_id>, favorite <paste_id>, unfavorite <paste_id>, download <paste_id>, edit <paste_id>
|
||||||
|
_dynamic_paste_ids
|
||||||
|
;;
|
||||||
|
download_all|download_favorites|list_favorites)
|
||||||
|
# No additional arguments
|
||||||
|
;;
|
||||||
|
register)
|
||||||
|
# register <username> <password>
|
||||||
|
_arguments \
|
||||||
|
'1:Username:_default' \
|
||||||
|
'2:Password:_default'
|
||||||
|
;;
|
||||||
|
details)
|
||||||
|
# details (no arguments)
|
||||||
|
;;
|
||||||
|
search)
|
||||||
|
# search <query>
|
||||||
|
_arguments '1:Search query:_default'
|
||||||
|
;;
|
||||||
|
share|unshare)
|
||||||
|
# share <paste_id> <username> [can_edit]
|
||||||
|
if [[ $words[1] == "share" ]]; then
|
||||||
|
_arguments \
|
||||||
|
'1:Paste ID:_dynamic_paste_ids' \
|
||||||
|
'2:Username:_dynamic_usernames' \
|
||||||
|
'3:Can Edit:(true false)'
|
||||||
|
else
|
||||||
|
# unshare <paste_id> <username>
|
||||||
|
_arguments \
|
||||||
|
'1:Paste ID:_dynamic_paste_ids' \
|
||||||
|
'2:Username:_dynamic_usernames'
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
_expire_options() {
|
||||||
|
_values "Expiration option" \
|
||||||
|
"yes[The paste will expire after 1 day]" \
|
||||||
|
"no[The paste will not expire]"
|
||||||
|
}
|
||||||
|
|
||||||
|
_private_options() {
|
||||||
|
_values "Privacy option" \
|
||||||
|
"yes[The paste will be private]" \
|
||||||
|
"no[The paste will be public]"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Function to dynamically fetch paste IDs from the server
|
||||||
|
_dynamic_paste_ids() {
|
||||||
|
local token_file="$HOME/.pastebin_token"
|
||||||
|
local token
|
||||||
|
local response
|
||||||
|
local paste_ids=()
|
||||||
|
|
||||||
|
# Check if the token file exists
|
||||||
|
if [[ -f "$token_file" ]]; then
|
||||||
|
token=$(cat "$token_file")
|
||||||
|
else
|
||||||
|
_message "No token found. Please log in first."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Fetch paste IDs using the API
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $token" "$API_URL/pastes")
|
||||||
|
|
||||||
|
# Parse the response to extract paste IDs
|
||||||
|
if [[ $? -eq 0 ]]; then
|
||||||
|
paste_ids=($(echo "$response" | jq -r '.[].id'))
|
||||||
|
fi
|
||||||
|
|
||||||
|
if (( ${#paste_ids[@]} )); then
|
||||||
|
_values "paste_id" "${paste_ids[@]}"
|
||||||
|
else
|
||||||
|
_message "No pastes found."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Function to dynamically fetch usernames from the server
|
||||||
|
_dynamic_usernames() {
|
||||||
|
local token_file="$HOME/.pastebin_token"
|
||||||
|
local token
|
||||||
|
local response
|
||||||
|
local usernames=()
|
||||||
|
|
||||||
|
# Check if the token file exists
|
||||||
|
if [[ -f "$token_file" ]]; then
|
||||||
|
token=$(cat "$token_file")
|
||||||
|
else
|
||||||
|
_message "No token found. Please log in first."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Fetch usernames using the API
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $token" "$API_URL/api/users")
|
||||||
|
|
||||||
|
# Parse the response to extract usernames
|
||||||
|
if [[ $? -eq 0 ]]; then
|
||||||
|
usernames=($(echo "$response" | jq -r '.users[]'))
|
||||||
|
fi
|
||||||
|
|
||||||
|
if (( ${#usernames[@]} )); then
|
||||||
|
_values "username" "${usernames[@]}"
|
||||||
|
else
|
||||||
|
_message "No users found."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Associate the autocompletion function with the script name
|
||||||
|
compdef _pastebin_client pastebin_client.sh
|
||||||
|
|
25
Dockerfile
Normal file
25
Dockerfile
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
FROM python:3.9-slim
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
gcc \
|
||||||
|
libpq-dev \
|
||||||
|
build-essential \
|
||||||
|
python3-dev \
|
||||||
|
libmagic-dev \
|
||||||
|
mediainfo \
|
||||||
|
tesseract-ocr \
|
||||||
|
libtesseract-dev \
|
||||||
|
poppler-utils \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
RUN pip install --no-cache-dir -r requirements.txt
|
||||||
|
|
||||||
|
EXPOSE 5000
|
||||||
|
|
||||||
|
CMD ["gunicorn", "--preload", "-w", "4", "-b", "0.0.0.0:5000", "--timeout", "120", "app:app", "--log-level=debug"]
|
||||||
|
|
||||||
|
|
26
LICENSE
Normal file
26
LICENSE
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
BSD 2-Clause License
|
||||||
|
|
||||||
|
Copyright (c) 2024, [Tu Nombre o Nombre de tu Organización]
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
1. Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||||
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
261
README.md
Normal file
261
README.md
Normal file
@ -0,0 +1,261 @@
|
|||||||
|
# MyPastebin
|
||||||
|
|
||||||
|
**MyPastebin** is an application for creating and sharing text or file pastes with syntax highlighting. You can also access content in raw format and manage it through an API or a Bash client.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- Create text pastes or upload files with syntax highlighting.
|
||||||
|
- Supports images, videos, and generic binary files.
|
||||||
|
- View pastes in HTML or raw format.
|
||||||
|
- User management: register new users and list existing users (admin only).
|
||||||
|
- Interact with the application using `curl` or a Bash client.
|
||||||
|
- List and delete pastes with authentication.
|
||||||
|
- Deployable with Docker and Kubernetes.
|
||||||
|
|
||||||
|
## Technologies Used
|
||||||
|
|
||||||
|
- **Python** (Flask) for the backend.
|
||||||
|
- **SQLite** or **postgresql** as a local database.
|
||||||
|
- **Pygments** for syntax highlighting.
|
||||||
|
- **Docker** and **Kubernetes** for deployments.
|
||||||
|
|
||||||
|
## Installation and Usage
|
||||||
|
|
||||||
|
### Using Docker
|
||||||
|
|
||||||
|
1. Build the Docker image:
|
||||||
|
```bash
|
||||||
|
docker build -t mypastebin .
|
||||||
|
|
||||||
|
2. Start the container with Docker Compose::
|
||||||
|
```bash
|
||||||
|
docker-compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
3. The application will be available at `http://localhost:5000`.
|
||||||
|
|
||||||
|
### Using Kubernetes
|
||||||
|
|
||||||
|
1. Apply the Kubernetes manifests:
|
||||||
|
```bash
|
||||||
|
kubectl apply -f k8s/
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Access the service through the Ingress configured in your cluster.
|
||||||
|
|
||||||
|
### Acceso a la Aplicación
|
||||||
|
|
||||||
|
the app will be available at : [https://paste.priet.us](https://paste.priet.us).
|
||||||
|
|
||||||
|
Bash Client
|
||||||
|
-----------
|
||||||
|
|
||||||
|
The Bash client simplifies interaction with the service. Download it here:
|
||||||
|
|
||||||
|
[Download Bash Client](https://gitlab.com/teraflops/mypastebin/-/blob/main/pastebin_client.sh) | [GitLab Repository](https://gitlab.com/teraflops/mypastebin)
|
||||||
|
|
||||||
|
### Examples
|
||||||
|
|
||||||
|
* **Authentication:**
|
||||||
|
|
||||||
|
./pastebin_client.sh login admin password123
|
||||||
|
|
||||||
|
* **Create a Paste (with expiration):**
|
||||||
|
|
||||||
|
echo "Hello World" | ./pastebin_client.sh create plaintext yes
|
||||||
|
|
||||||
|
Creates a paste in `plaintext` format that expires in 1 day.
|
||||||
|
|
||||||
|
* **Upload a File (with expiration):**
|
||||||
|
|
||||||
|
./pastebin_client.sh upload script.py python yes
|
||||||
|
|
||||||
|
Uploads `script.py` as a Python paste that expires in 1 day.
|
||||||
|
|
||||||
|
* **View a Paste:**
|
||||||
|
|
||||||
|
./pastebin_client.sh view 1
|
||||||
|
|
||||||
|
* **View Raw Content:**
|
||||||
|
|
||||||
|
./pastebin_client.sh view_raw 1
|
||||||
|
|
||||||
|
* **List Pastes:**
|
||||||
|
|
||||||
|
./pastebin_client.sh list
|
||||||
|
|
||||||
|
* **Delete a Paste:**
|
||||||
|
|
||||||
|
./pastebin_client.sh delete 1
|
||||||
|
|
||||||
|
* **Search Paste Contents:**
|
||||||
|
|
||||||
|
./pastebin_client.sh search "search term"
|
||||||
|
|
||||||
|
* **User Details:**
|
||||||
|
|
||||||
|
./pastebin_client.sh details
|
||||||
|
|
||||||
|
* **Mark a Paste as Favorite:**
|
||||||
|
|
||||||
|
./pastebin_client.sh favorite 1
|
||||||
|
|
||||||
|
* **Remove a Paste from Favorites:**
|
||||||
|
|
||||||
|
./pastebin_client.sh unfavorite 1
|
||||||
|
|
||||||
|
* **Download a Paste:**
|
||||||
|
|
||||||
|
./pastebin_client.sh download 1
|
||||||
|
|
||||||
|
* **List Favorites:**
|
||||||
|
|
||||||
|
./pastebin_client.sh list_favorites
|
||||||
|
|
||||||
|
* **List Pastes Shared With Others:**
|
||||||
|
|
||||||
|
./pastebin_client.sh shared_with_others
|
||||||
|
|
||||||
|
* **List Pastes Shared With Me:**
|
||||||
|
|
||||||
|
./pastebin_client.sh shared_with_me
|
||||||
|
|
||||||
|
* **Share a Paste:**
|
||||||
|
|
||||||
|
./pastebin_client.sh share 1 username true
|
||||||
|
|
||||||
|
Shares paste with ID 1 with `username`, allowing edit if `true` is passed.
|
||||||
|
|
||||||
|
* **Unshare a Paste:**
|
||||||
|
|
||||||
|
./pastebin_client.sh unshare 1 test
|
||||||
|
|
||||||
|
* **Edit a Paste (via Editor):**
|
||||||
|
|
||||||
|
./pastebin_client.sh edit 1
|
||||||
|
|
||||||
|
Opens paste with ID 1 in your default editor. Upon saving and exiting, the updated content is sent to the server.
|
||||||
|
|
||||||
|
|
||||||
|
Curl Examples
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Interact directly with the service using `curl`.
|
||||||
|
|
||||||
|
* **Authentication:**
|
||||||
|
|
||||||
|
curl -X POST {{ request.host_url }}api/token \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"username":"admin","password":"password123"}'
|
||||||
|
|
||||||
|
* **Create a Paste (with expiration):**
|
||||||
|
|
||||||
|
echo "Hello World" | curl -X POST {{ request.host_url }}paste \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>" \
|
||||||
|
-F "c=@-" \
|
||||||
|
-F "lang=plaintext" \
|
||||||
|
-F "expire=yes"
|
||||||
|
|
||||||
|
Creates a paste that expires in 1 day. Use `expire=no` for permanent pastes.
|
||||||
|
|
||||||
|
* **Upload a File (with expiration):**
|
||||||
|
|
||||||
|
curl -X POST {{ request.host_url }}paste \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>" \
|
||||||
|
-F "c=@script.py" \
|
||||||
|
-F "lang=python" \
|
||||||
|
-F "expire=yes"
|
||||||
|
|
||||||
|
Uploads `script.py` as a Python paste that expires in 1 day.
|
||||||
|
|
||||||
|
* **View a Paste:**
|
||||||
|
|
||||||
|
curl {{ request.host_url }}paste/1/json \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **View Raw Content:**
|
||||||
|
|
||||||
|
curl {{ request.host_url }}paste/1/raw \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **List Pastes:**
|
||||||
|
|
||||||
|
curl -H "Authorization: Bearer <YOUR_TOKEN>" {{ request.host_url }}pastes
|
||||||
|
|
||||||
|
* **Delete a Paste:**
|
||||||
|
|
||||||
|
curl -X DELETE {{ request.host_url }}paste/1 \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **Search Paste Contents:**
|
||||||
|
|
||||||
|
curl -X GET {{ request.host_url }}pastes/search?q="search term" \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **User Details:**
|
||||||
|
|
||||||
|
curl -X GET {{ request.host_url }}user/details \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **Mark a Paste as Favorite:**
|
||||||
|
|
||||||
|
curl -X POST {{ request.host_url }}api/paste/1/favorite \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **Remove a Paste from Favorites:**
|
||||||
|
|
||||||
|
curl -X POST {{ request.host_url }}api/paste/1/unfavorite \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **Download a Paste:**
|
||||||
|
|
||||||
|
curl -X GET {{ request.host_url }}api/paste/1/download \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>" \
|
||||||
|
-J -O
|
||||||
|
|
||||||
|
* **List Favorites:**
|
||||||
|
|
||||||
|
curl -X GET {{ request.host_url }}api/favorites \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **List Pastes Shared With Others:**
|
||||||
|
|
||||||
|
curl -X GET {{ request.host_url }}api/shared_with_others \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **List Pastes Shared With Me:**
|
||||||
|
|
||||||
|
curl -X GET {{ request.host_url }}api/shared_with_me \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>"
|
||||||
|
|
||||||
|
* **Share a Paste:**
|
||||||
|
|
||||||
|
curl -X POST {{ request.host_url }}api/paste/1/share \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{
|
||||||
|
"username": "test_user",
|
||||||
|
"can_edit": true
|
||||||
|
}'
|
||||||
|
|
||||||
|
Shares paste with ID 1 with `test_user`, allowing edit if `can_edit` is `true`.
|
||||||
|
|
||||||
|
* **Unshare a Paste:**
|
||||||
|
|
||||||
|
curl -X POST {{ request.host_url }}api/paste/1/unshare \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{
|
||||||
|
"username": "test"
|
||||||
|
}'
|
||||||
|
|
||||||
|
* **Edit a Paste:**
|
||||||
|
|
||||||
|
curl -X PUT {{ request.host_url }}api/paste/1 \
|
||||||
|
-H "Authorization: Bearer <YOUR_TOKEN>" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{
|
||||||
|
"content": "Updated content here"
|
||||||
|
}'
|
||||||
|
|
||||||
|
Overwrites the content of paste with ID 1 using JSON. Make sure the authenticated user has edit permission.
|
116
app.py
Normal file
116
app.py
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
from flask import Flask, render_template, request, redirect, url_for, flash, session
|
||||||
|
from src.models import db, User, Paste
|
||||||
|
from src.routes import init_routes
|
||||||
|
from src.auth import jwt_required
|
||||||
|
from config import SQLALCHEMY_DATABASE_URI, SQLALCHEMY_ENGINE_OPTIONS
|
||||||
|
from werkzeug.security import generate_password_hash
|
||||||
|
from sqlalchemy.exc import IntegrityError
|
||||||
|
import os
|
||||||
|
from flask_login import LoginManager, login_user, current_user, logout_user, login_required
|
||||||
|
from werkzeug.middleware.proxy_fix import ProxyFix
|
||||||
|
import logging
|
||||||
|
from config import UPLOAD_FOLDER
|
||||||
|
from flask_migrate import Migrate
|
||||||
|
from flask_apscheduler import APScheduler
|
||||||
|
from src.routes import delete_expired_pastes
|
||||||
|
from elasticsearch import Elasticsearch
|
||||||
|
|
||||||
|
# Inicializa la aplicación Flask
|
||||||
|
app = Flask(__name__)
|
||||||
|
app.config['SQLALCHEMY_DATABASE_URI'] = SQLALCHEMY_DATABASE_URI
|
||||||
|
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
|
||||||
|
app.config['SQLALCHEMY_ENGINE_OPTIONS'] = SQLALCHEMY_ENGINE_OPTIONS
|
||||||
|
app.secret_key = 'admin_console_secret_key'
|
||||||
|
app.wsgi_app = ProxyFix(app.wsgi_app, x_proto=1, x_host=1)
|
||||||
|
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
|
||||||
|
|
||||||
|
# Inicializa la base de datos
|
||||||
|
db.init_app(app)
|
||||||
|
migrate = Migrate(app, db)
|
||||||
|
|
||||||
|
# Inicializa Flask-Login
|
||||||
|
login_manager = LoginManager()
|
||||||
|
login_manager.init_app(app)
|
||||||
|
login_manager.login_view = 'login'
|
||||||
|
login_manager.login_message_category = 'info'
|
||||||
|
|
||||||
|
# Cargador de usuario para Flask-Login
|
||||||
|
@login_manager.user_loader
|
||||||
|
def load_user(user_id):
|
||||||
|
return User.query.get(int(user_id)) # Asegúrate de que la ruta de importación sea correcta
|
||||||
|
|
||||||
|
# Conexión con Elasticsearch
|
||||||
|
es = Elasticsearch(["http://elasticsearch:9200"])
|
||||||
|
|
||||||
|
def create_paste_index():
|
||||||
|
"""
|
||||||
|
Crea el índice 'pastes' en Elasticsearch si no existe.
|
||||||
|
"""
|
||||||
|
index_name = "pastes"
|
||||||
|
|
||||||
|
mappings = {
|
||||||
|
"mappings": {
|
||||||
|
"properties": {
|
||||||
|
"id": { "type": "keyword" },
|
||||||
|
"title": { "type": "text" },
|
||||||
|
"content": { "type": "text" },
|
||||||
|
"owner_id": { "type": "keyword" },
|
||||||
|
"language": { "type": "keyword" },
|
||||||
|
"content_type": { "type": "keyword" },
|
||||||
|
"created_at": { "type": "date" },
|
||||||
|
"private": { "type": "boolean" },
|
||||||
|
"shared_with": { "type": "keyword" } # ✅ Se deja sin `ignore_above` para múltiples valores
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Eliminar índice si ya existe (para evitar conflictos)
|
||||||
|
if es.indices.exists(index=index_name):
|
||||||
|
es.indices.delete(index=index_name)
|
||||||
|
print(f"[INFO] Índice '{index_name}' eliminado antes de la recreación.")
|
||||||
|
|
||||||
|
# Crear el índice con la nueva estructura
|
||||||
|
es.indices.create(index=index_name, body=mappings)
|
||||||
|
print(f"[INFO] Índice '{index_name}' creado correctamente en Elasticsearch.")
|
||||||
|
|
||||||
|
# Ejecuta la creación del índice en el contexto de la app
|
||||||
|
with app.app_context():
|
||||||
|
db.create_all()
|
||||||
|
create_paste_index() # 📌 Aquí se crea el índice antes de inicializar las rutas
|
||||||
|
|
||||||
|
default_username = os.getenv("VALID_USER", "admin")
|
||||||
|
default_password = os.getenv("VALID_PASS", "password123")
|
||||||
|
try:
|
||||||
|
if not User.query.filter_by(username=default_username).first():
|
||||||
|
user = User(username=default_username)
|
||||||
|
user.set_password(default_password)
|
||||||
|
db.session.add(user)
|
||||||
|
db.session.commit()
|
||||||
|
print(f"Usuario por defecto creado: {default_username}")
|
||||||
|
else:
|
||||||
|
print(f"Usuario por defecto ya existe: {default_username}")
|
||||||
|
except IntegrityError:
|
||||||
|
db.session.rollback()
|
||||||
|
print("Usuario admin ya existía. Continuando...")
|
||||||
|
|
||||||
|
# Inicializar rutas
|
||||||
|
init_routes(app)
|
||||||
|
|
||||||
|
scheduler = APScheduler()
|
||||||
|
|
||||||
|
def delete_expired_pastes_task():
|
||||||
|
"""Ejecuta la limpieza de pastes expirados dentro del contexto de Flask"""
|
||||||
|
with app.app_context():
|
||||||
|
delete_expired_pastes()
|
||||||
|
|
||||||
|
def setup_scheduler(app):
|
||||||
|
"""Configura y arranca el scheduler"""
|
||||||
|
scheduler.init_app(app)
|
||||||
|
scheduler.start()
|
||||||
|
scheduler.add_job(id='delete_expired_pastes', func=delete_expired_pastes_task, trigger='interval', hours=1)
|
||||||
|
|
||||||
|
setup_scheduler(app)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
app.run(debug=True, host='0.0.0.0', port=5000)
|
||||||
|
|
65
config.py
Normal file
65
config.py
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
import os
|
||||||
|
|
||||||
|
# Base de datos
|
||||||
|
DB_ENGINE = os.getenv("DB_ENGINE", "sqlite")
|
||||||
|
|
||||||
|
POSTGRES_USER = os.getenv("POSTGRES_USER", "mypasteuser")
|
||||||
|
POSTGRES_PASSWORD = os.getenv("POSTGRES_PASSWORD", "mypastepassword")
|
||||||
|
POSTGRES_DB = os.getenv("POSTGRES_DB", "mypastedb")
|
||||||
|
POSTGRES_HOST = os.getenv("POSTGRES_HOST", "db")
|
||||||
|
POSTGRES_PORT = os.getenv("POSTGRES_PORT", "5432")
|
||||||
|
|
||||||
|
DB_URI_POSTGRES = f"postgresql://{POSTGRES_USER}:{POSTGRES_PASSWORD}@{POSTGRES_HOST}:{POSTGRES_PORT}/{POSTGRES_DB}"
|
||||||
|
|
||||||
|
DB_PATH = os.getenv("DB_PATH", "/app/database/database.db")
|
||||||
|
DB_URI_SQLITE = f"sqlite:///{DB_PATH}"
|
||||||
|
|
||||||
|
if DB_ENGINE == "postgres":
|
||||||
|
SQLALCHEMY_DATABASE_URI = DB_URI_POSTGRES
|
||||||
|
SQLALCHEMY_ENGINE_OPTIONS = {
|
||||||
|
"pool_pre_ping": True,
|
||||||
|
"pool_recycle": 1800, # Recycle connections every 30 minutes
|
||||||
|
"pool_size": 10, # Set the pool size
|
||||||
|
"max_overflow": 20 # Allow a maximum of 20 connections to exceed the pool size
|
||||||
|
}
|
||||||
|
else:
|
||||||
|
SQLALCHEMY_DATABASE_URI = DB_URI_SQLITE
|
||||||
|
SQLALCHEMY_ENGINE_OPTIONS = {}
|
||||||
|
|
||||||
|
# Clave secreta para JWT
|
||||||
|
SECRET_KEY = os.getenv("SECRET_KEY", "lñkkjkjkñkljñkjñkljlkjñklljñkjñlkj") # Mejor usar una clave generada al desplegar
|
||||||
|
JWT_ALGORITHM = os.getenv("JWT_ALGORITHM", "HS256")
|
||||||
|
JWT_EXP_DELTA_SECONDS = int(os.getenv("JWT_EXP_DELTA_SECONDS", 3600))
|
||||||
|
|
||||||
|
# Ruta para subir archivos
|
||||||
|
UPLOAD_FOLDER = os.getenv("UPLOAD_FOLDER", "/app/uploads")
|
||||||
|
|
||||||
|
# Configuración de SMTP
|
||||||
|
SMTP_SERVER = os.getenv("SMTP_SERVER", "priet.us")
|
||||||
|
SMTP_PORT = int(os.getenv("SMTP_PORT", 465)) # Usa 465 para SSL
|
||||||
|
SMTP_USERNAME = os.getenv("SMTP_USERNAME", "")
|
||||||
|
SMTP_PASSWORD = os.getenv("SMTP_PASSWORD", "")
|
||||||
|
SMTP_USE_TLS = os.getenv("SMTP_USE_TLS", "false").lower() == "true"
|
||||||
|
SMTP_USE_SSL = os.getenv("SMTP_USE_SSL", "true").lower() == "true"
|
||||||
|
|
||||||
|
# config.py
|
||||||
|
ROLE_STORAGE_LIMITS = {
|
||||||
|
'admin': -1, # Ilimitado
|
||||||
|
'advanced': 2 * 1024**3, # 2GB en bytes
|
||||||
|
'user': 1 * 1024**3, # 1GB en bytes
|
||||||
|
}
|
||||||
|
|
||||||
|
# Debugging (opcional)
|
||||||
|
if __name__ == "__main__":
|
||||||
|
print("Current configuration:")
|
||||||
|
print(f"DB_ENGINE: {DB_ENGINE}")
|
||||||
|
print(f"SQLALCHEMY_DATABASE_URI: {SQLALCHEMY_DATABASE_URI}")
|
||||||
|
print(f"JWT_ALGORITHM: {JWT_ALGORITHM}")
|
||||||
|
print(f"JWT_EXP_DELTA_SECONDS: {JWT_EXP_DELTA_SECONDS}")
|
||||||
|
print(f"UPLOAD_FOLDER: {UPLOAD_FOLDER}")
|
||||||
|
print(f"SMTP_SERVER: {SMTP_SERVER}")
|
||||||
|
print(f"SMTP_PORT: {SMTP_PORT}")
|
||||||
|
print(f"SMTP_USERNAME: {SMTP_USERNAME}")
|
||||||
|
print(f"SMTP_USE_TLS: {SMTP_USE_TLS}")
|
||||||
|
print(f"SMTP_USE_SSL: {SMTP_USE_SSL}")
|
||||||
|
|
67
docker-compose.yml
Normal file
67
docker-compose.yml
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
services:
|
||||||
|
db:
|
||||||
|
image: postgres:15
|
||||||
|
environment:
|
||||||
|
- POSTGRES_USER=mypasteuser
|
||||||
|
- POSTGRES_PASSWORD=mypastepassword
|
||||||
|
- POSTGRES_DB=mypastedb
|
||||||
|
volumes:
|
||||||
|
- db_data:/var/lib/postgresql/data
|
||||||
|
networks:
|
||||||
|
- my_network
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -U mypasteuser -d mypastedb"]
|
||||||
|
interval: 5s
|
||||||
|
timeout: 3s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
app:
|
||||||
|
build: .
|
||||||
|
ports:
|
||||||
|
- "5000:5000"
|
||||||
|
volumes:
|
||||||
|
- ./uploads:/app/uploads
|
||||||
|
environment:
|
||||||
|
- DB_ENGINE=postgres
|
||||||
|
- POSTGRES_USER=mypasteuser
|
||||||
|
- POSTGRES_PASSWORD=mypastepassword
|
||||||
|
- POSTGRES_DB=mypastedb
|
||||||
|
- POSTGRES_HOST=db
|
||||||
|
- POSTGRES_PORT=5432
|
||||||
|
- VALID_USER=admin
|
||||||
|
- VALID_PASS=password
|
||||||
|
- FLASK_ENV=production
|
||||||
|
- ELASTICSEARCH_HOST=http://elasticsearch:9200 # Agregado
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_healthy
|
||||||
|
elasticsearch:
|
||||||
|
condition: service_started
|
||||||
|
networks:
|
||||||
|
- my_network
|
||||||
|
|
||||||
|
elasticsearch:
|
||||||
|
image: docker.elastic.co/elasticsearch/elasticsearch:8.9.0
|
||||||
|
environment:
|
||||||
|
- discovery.type=single-node # Configuración básica para un nodo único
|
||||||
|
- ES_JAVA_OPTS=-Xms512m -Xmx512m # Configuración de memoria
|
||||||
|
- xpack.security.enabled=false
|
||||||
|
- action.auto_create_index=true
|
||||||
|
ports:
|
||||||
|
- "9200:9200" # Puerto HTTP
|
||||||
|
- "9300:9300" # Puerto de comunicación entre nodos
|
||||||
|
networks:
|
||||||
|
- my_network
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "curl -f http://localhost:9200 || exit 1"]
|
||||||
|
interval: 5s
|
||||||
|
timeout: 3s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
db_data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
my_network:
|
||||||
|
driver: bridge
|
||||||
|
|
25
generate_css.py
Normal file
25
generate_css.py
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
import os
|
||||||
|
from pygments.styles import get_all_styles
|
||||||
|
from pygments.formatters import HtmlFormatter
|
||||||
|
|
||||||
|
# Define la carpeta de destino para los archivos CSS
|
||||||
|
OUTPUT_DIR = os.path.join('static', 'css')
|
||||||
|
|
||||||
|
# Crea la carpeta si no existe
|
||||||
|
os.makedirs(OUTPUT_DIR, exist_ok=True)
|
||||||
|
|
||||||
|
# Itera sobre todos los estilos disponibles en Pygments
|
||||||
|
for style in get_all_styles():
|
||||||
|
formatter = HtmlFormatter(style=style, linenos=True, cssclass="highlight")
|
||||||
|
css = formatter.get_style_defs('.highlight')
|
||||||
|
|
||||||
|
# Define el nombre del archivo CSS
|
||||||
|
css_filename = f"{style}.css"
|
||||||
|
css_path = os.path.join(OUTPUT_DIR, css_filename)
|
||||||
|
|
||||||
|
# Escribe el CSS en el archivo
|
||||||
|
with open(css_path, 'w') as f:
|
||||||
|
f.write(css)
|
||||||
|
|
||||||
|
print(f"Generado: {css_path}")
|
||||||
|
|
35
k8s/cdn/cdn-deployment.yaml
Normal file
35
k8s/cdn/cdn-deployment.yaml
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: static-content
|
||||||
|
labels:
|
||||||
|
app: static-content
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: static-content
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: static-content
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: nginx
|
||||||
|
image: nginx:latest
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
volumeMounts:
|
||||||
|
- name: static-files
|
||||||
|
mountPath: /usr/share/nginx/html
|
||||||
|
- name: nginx-config
|
||||||
|
mountPath: /etc/nginx/conf.d/default.conf
|
||||||
|
subPath: default.conf
|
||||||
|
volumes:
|
||||||
|
- name: static-files
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: static-pvc
|
||||||
|
- name: nginx-config
|
||||||
|
configMap:
|
||||||
|
name: nginx-config
|
||||||
|
|
28
k8s/cdn/cdn-ingress.yaml
Normal file
28
k8s/cdn/cdn-ingress.yaml
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: cdn-ingress
|
||||||
|
namespace: default
|
||||||
|
annotations:
|
||||||
|
kubernetes.io/ingress.class: traefik
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-prod-dns
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
traefik.ingress.kubernetes.io/router.tls: "true"
|
||||||
|
traefik.ingress.kubernetes.io/router.tls.certresolver: letsencrypt
|
||||||
|
spec:
|
||||||
|
rules:
|
||||||
|
- host: cdn.priet.us
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: static-content-service
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- cdn.priet.us
|
||||||
|
secretName: cdn-tls
|
||||||
|
|
39
k8s/cdn/cdn-nginx-configmap.yaml
Normal file
39
k8s/cdn/cdn-nginx-configmap.yaml
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: nginx-config
|
||||||
|
labels:
|
||||||
|
app: static-content
|
||||||
|
data:
|
||||||
|
default.conf: |
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name cdn.priet.us;
|
||||||
|
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
|
||||||
|
# Bloque para manejar solicitudes de archivos estáticos con CORS
|
||||||
|
location ~* \.(css|js|woff|woff2|ttf|eot|svg)$ {
|
||||||
|
add_header 'Access-Control-Allow-Origin' '*' always;
|
||||||
|
add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS' always;
|
||||||
|
add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept' always;
|
||||||
|
|
||||||
|
# Manejar solicitudes OPTIONS (preflight)
|
||||||
|
if ($request_method = 'OPTIONS') {
|
||||||
|
add_header 'Access-Control-Allow-Origin' '*' always;
|
||||||
|
add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS' always;
|
||||||
|
add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept' always;
|
||||||
|
add_header 'Content-Length' 0;
|
||||||
|
add_header 'Content-Type' 'text/plain; charset=UTF-8';
|
||||||
|
return 204;
|
||||||
|
}
|
||||||
|
|
||||||
|
try_files $uri $uri/ =404;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Bloque para manejar otras solicitudes
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ =404;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
12
k8s/cdn/cdn-pvc.yaml
Normal file
12
k8s/cdn/cdn-pvc.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: static-pvc
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 10Gi
|
||||||
|
storageClassName: longhorn
|
||||||
|
|
14
k8s/cdn/cdn-service.yaml
Normal file
14
k8s/cdn/cdn-service.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: static-content-service
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: static-content
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 80
|
||||||
|
type: ClusterIP
|
||||||
|
|
31
k8s/cdn/default.conf
Normal file
31
k8s/cdn/default.conf
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name localhost;
|
||||||
|
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
|
||||||
|
# Bloque para manejar solicitudes de archivos estáticos con CORS
|
||||||
|
location ~* \.(css|js|woff|woff2|ttf|eot|svg)$ {
|
||||||
|
add_header 'Access-Control-Allow-Origin' '*' always;
|
||||||
|
add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS' always;
|
||||||
|
add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept' always;
|
||||||
|
|
||||||
|
# Manejar solicitudes OPTIONS (preflight)
|
||||||
|
if ($request_method = 'OPTIONS') {
|
||||||
|
add_header 'Access-Control-Allow-Origin' '*' always;
|
||||||
|
add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS' always;
|
||||||
|
add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept' always;
|
||||||
|
add_header 'Content-Length' 0;
|
||||||
|
add_header 'Content-Type' 'text/plain; charset=UTF-8';
|
||||||
|
return 204;
|
||||||
|
}
|
||||||
|
|
||||||
|
try_files $uri $uri/ =404;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Bloque para manejar otras solicitudes
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ =404;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
15
k8s/configmap.yaml
Normal file
15
k8s/configmap.yaml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: pastebin-config
|
||||||
|
namespace: default
|
||||||
|
data:
|
||||||
|
SMTP_USE_TLS: "false"
|
||||||
|
SMTP_USE_SSL: "true"
|
||||||
|
SMTP_SERVER: "priet.us"
|
||||||
|
SMTP_USERNAME: "me@priet.us"
|
||||||
|
SMTP_PORT: "465"
|
||||||
|
SMTP_PASSWORD: "wasamasa123"
|
||||||
|
JWT_EXP_DELTA_SECONDS: "86400"
|
||||||
|
VALID_USER: "admin"
|
||||||
|
VALID_PASS: "wasamasa123"
|
66
k8s/deployent.yaml
Normal file
66
k8s/deployent.yaml
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: pastebin-app
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: pastebin
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: pastebin
|
||||||
|
spec:
|
||||||
|
# Solo mantengo un initContainer para "uploads",
|
||||||
|
# asumiendo que no necesitas fix-permissions para /app/database
|
||||||
|
initContainers:
|
||||||
|
- name: fix-permissions-uploads
|
||||||
|
image: busybox
|
||||||
|
command: ["sh", "-c", "chown -R 1000:1000 /app/uploads"]
|
||||||
|
volumeMounts:
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
|
||||||
|
containers:
|
||||||
|
- name: pastebin-container
|
||||||
|
image: prietus/pastebin-app:1.2
|
||||||
|
ports:
|
||||||
|
- containerPort: 5000
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 0
|
||||||
|
runAsGroup: 0
|
||||||
|
env:
|
||||||
|
# Variables para que tu app apunte a PostgreSQL
|
||||||
|
- name: DB_ENGINE
|
||||||
|
value: "postgres"
|
||||||
|
- name: POSTGRES_HOST
|
||||||
|
value: "db-service" # <--- nombre del servicio de PostgreSQL en el cluster
|
||||||
|
- name: POSTGRES_PORT
|
||||||
|
value: "5432"
|
||||||
|
- name: POSTGRES_USER
|
||||||
|
value: "postgres" # <--- ajusta según tu config
|
||||||
|
- name: POSTGRES_PASSWORD
|
||||||
|
value: "password" # <--- ajusta según tu config
|
||||||
|
- name: POSTGRES_DB
|
||||||
|
value: "mypastedb" # <--- ajusta según tu config
|
||||||
|
|
||||||
|
# Usuario/contraseña por defecto de la app
|
||||||
|
- name: VALID_USER
|
||||||
|
value: "admin"
|
||||||
|
- name: VALID_PASS
|
||||||
|
value: "password"
|
||||||
|
|
||||||
|
# Configuración de entorno Flask
|
||||||
|
- name: FLASK_ENV
|
||||||
|
value: "production"
|
||||||
|
|
||||||
|
volumeMounts:
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
- name: uploads
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: uploads-pvc
|
||||||
|
|
97
k8s/pastebin-deployment.yaml
Normal file
97
k8s/pastebin-deployment.yaml
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: pastebin-app
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: pastebin
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: pastebin
|
||||||
|
spec:
|
||||||
|
initContainers:
|
||||||
|
- name: fix-permissions
|
||||||
|
image: busybox
|
||||||
|
command: ["sh", "-c", "chown -R 1000:1000 /app/uploads"]
|
||||||
|
volumeMounts:
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
containers:
|
||||||
|
- name: pastebin-container
|
||||||
|
image: prietus/pastebin-app:1.65
|
||||||
|
ports:
|
||||||
|
- containerPort: 5000
|
||||||
|
env:
|
||||||
|
- name: DB_ENGINE
|
||||||
|
value: "postgres"
|
||||||
|
- name: POSTGRES_HOST
|
||||||
|
value: "pastebin-postgres"
|
||||||
|
- name: VALID_USER
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: VALID_USER
|
||||||
|
- name: VALID_PASS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: VALID_PASS
|
||||||
|
- name: POSTGRES_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: POSTGRES_PASSWORD
|
||||||
|
- name: DATABASE_URL
|
||||||
|
value: "postgresql://mypasteuser:$(POSTGRES_PASSWORD)@pastebin-postgres:5432/mypastedb?connect_timeout=10"
|
||||||
|
- name: SMTP_USE_TLS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_USE_TLS
|
||||||
|
- name: SMTP_USE_SSL
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_USE_SSL
|
||||||
|
- name: SMTP_SERVER
|
||||||
|
value: "priet.us"
|
||||||
|
- name: SMTP_PORT
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_PORT
|
||||||
|
- name: SMTP_USERNAME
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SMTP_USERNAME
|
||||||
|
- name: SMTP_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SMTP_PASSWORD
|
||||||
|
volumeMounts:
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
volumes:
|
||||||
|
- name: uploads
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: uploads-pvc
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: pastebin-service
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 5000
|
||||||
|
selector:
|
||||||
|
app: pastebin
|
||||||
|
type: ClusterIP
|
||||||
|
|
25
k8s/pastebin-ingress.yaml
Normal file
25
k8s/pastebin-ingress.yaml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: pastebin-ingress
|
||||||
|
namespace: default
|
||||||
|
annotations:
|
||||||
|
kubernetes.io/ingress.class: traefik
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-prod-dns
|
||||||
|
spec:
|
||||||
|
rules:
|
||||||
|
- host: paste.priet.us
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: pastebin-service # Nombre del Service asociado a tu aplicación
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- paste.priet.us
|
||||||
|
secretName: pastebin-tls
|
||||||
|
|
46
k8s/pastebin-postgres-deployment.yaml
Normal file
46
k8s/pastebin-postgres-deployment.yaml
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: pastebin-postgres
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: pastebin-postgres
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: pastebin-postgres
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: postgres
|
||||||
|
image: postgres:15
|
||||||
|
ports:
|
||||||
|
- containerPort: 5432
|
||||||
|
env:
|
||||||
|
- name: POSTGRES_USER
|
||||||
|
value: "mypasteuser"
|
||||||
|
- name: POSTGRES_PASSWORD
|
||||||
|
value: "wasamasa123"
|
||||||
|
volumeMounts:
|
||||||
|
- name: postgres-data
|
||||||
|
mountPath: /var/lib/postgresql/data
|
||||||
|
subPath: pgdata
|
||||||
|
volumes:
|
||||||
|
- name: postgres-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: pastebin-postgres-pvc
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: pastebin-postgres
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: 5432
|
||||||
|
targetPort: 5432
|
||||||
|
selector:
|
||||||
|
app: pastebin-postgres
|
||||||
|
|
12
k8s/pastebin-postgres-pvc.yaml
Normal file
12
k8s/pastebin-postgres-pvc.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: pastebin-postgres-pvc
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 10Gi
|
||||||
|
|
12
k8s/pastebin-secret.yaml
Normal file
12
k8s/pastebin-secret.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: pastebin-secret
|
||||||
|
namespace: default
|
||||||
|
type: Opaque
|
||||||
|
data:
|
||||||
|
POSTGRES_PASSWORD: d2FzYW1hc2ExMjM=
|
||||||
|
SMTP_USERNAME: bWVAcHJpZXQudXM=
|
||||||
|
SMTP_PASSWORD: d2FzYW1hc2ExMjM=
|
||||||
|
SECRET_KEY: d2FzYW1hc2ExMjM=
|
||||||
|
|
13
k8s/pastebin-service.yaml
Normal file
13
k8s/pastebin-service.yaml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: pastebin-service
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: pastebin
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 5000
|
||||||
|
type: ClusterIP # Usa ClusterIP o NodePort según tus necesidades
|
||||||
|
|
12
k8s/pastebin-uploads-pvc.yaml
Normal file
12
k8s/pastebin-uploads-pvc.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: uploads-pvc
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 10Gi
|
||||||
|
|
12
k8s/pv.yaml
Normal file
12
k8s/pv.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolume
|
||||||
|
metadata:
|
||||||
|
name: uploads-pv
|
||||||
|
spec:
|
||||||
|
capacity:
|
||||||
|
storage: 50Gi
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
hostPath: # Cambia a un proveedor como AWS, GCP, etc.
|
||||||
|
path: "/mnt/data/uploads"
|
||||||
|
|
11
k8s/pvc.yaml
Normal file
11
k8s/pvc.yaml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: uploads-pvc
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 50Gi
|
||||||
|
|
11
k8s/sqlite/pastebin-configmap.yaml
Normal file
11
k8s/sqlite/pastebin-configmap.yaml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: pastebin-config
|
||||||
|
namespace: default
|
||||||
|
data:
|
||||||
|
JWT_EXP_DELTA_SECONDS: "360000"
|
||||||
|
SMTP_SERVER: "212.24.103.64"
|
||||||
|
SMTP_PORT: "465"
|
||||||
|
SMTP_USE_TLS: "false"
|
||||||
|
SMTP_USE_SSL: "true"
|
98
k8s/sqlite/pastebin-deployment.yaml
Normal file
98
k8s/sqlite/pastebin-deployment.yaml
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: pastebin-app
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: pastebin
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: pastebin
|
||||||
|
spec:
|
||||||
|
# InitContainers para ajustar permisos de ambos volúmenes
|
||||||
|
initContainers:
|
||||||
|
- name: fix-permissions-database
|
||||||
|
image: busybox
|
||||||
|
command: ["sh", "-c", "chown -R 1000:1000 /app/database"]
|
||||||
|
volumeMounts:
|
||||||
|
- name: database
|
||||||
|
mountPath: /app/database
|
||||||
|
- name: fix-permissions-uploads
|
||||||
|
image: busybox
|
||||||
|
command: ["sh", "-c", "chown -R 1000:1000 /app/uploads"]
|
||||||
|
volumeMounts:
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
# Contenedor principal
|
||||||
|
containers:
|
||||||
|
- name: pastebin-container
|
||||||
|
image: prietus/pastebin-app:1.4.1.1
|
||||||
|
ports:
|
||||||
|
- containerPort: 5000
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 0
|
||||||
|
runAsGroup: 0
|
||||||
|
env:
|
||||||
|
# Variables de entorno para configuración SMTP
|
||||||
|
- name: SMTP_USE_TLS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_USE_TLS
|
||||||
|
- name: SMTP_USE_SSL
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_USE_SSL
|
||||||
|
- name: SMTP_SERVER
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_SERVER
|
||||||
|
- name: SMTP_PORT
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_PORT
|
||||||
|
- name: SMTP_USERNAME
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SMTP_USERNAME
|
||||||
|
- name: SMTP_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SMTP_PASSWORD
|
||||||
|
# Variables adicionales
|
||||||
|
- name: VALID_USER
|
||||||
|
value: "admin"
|
||||||
|
- name: VALID_PASS
|
||||||
|
value: "password"
|
||||||
|
- name: SECRET_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SECRET_KEY
|
||||||
|
- name: JWT_EXP_DELTA_SECONDS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: JWT_EXP_DELTA_SECONDS
|
||||||
|
volumeMounts:
|
||||||
|
- name: database
|
||||||
|
mountPath: /app/database
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
# Declaración de volúmenes
|
||||||
|
volumes:
|
||||||
|
- name: database
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: database-pvc
|
||||||
|
- name: uploads
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: uploads-pvc
|
||||||
|
|
88
k8s/sqlite/pastebin-deployment.yaml_backup
Normal file
88
k8s/sqlite/pastebin-deployment.yaml_backup
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: pastebin-app
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: pastebin
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: pastebin
|
||||||
|
spec:
|
||||||
|
# InitContainers para ajustar permisos de ambos volúmenes
|
||||||
|
initContainers:
|
||||||
|
- name: fix-permissions-database
|
||||||
|
image: busybox
|
||||||
|
command: ["sh", "-c", "chown -R 1000:1000 /app/database"]
|
||||||
|
volumeMounts:
|
||||||
|
- name: database
|
||||||
|
mountPath: /app/database
|
||||||
|
- name: fix-permissions-uploads
|
||||||
|
image: busybox
|
||||||
|
command: ["sh", "-c", "chown -R 1000:1000 /app/uploads"]
|
||||||
|
volumeMounts:
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
# Contenedor principal
|
||||||
|
containers:
|
||||||
|
- name: pastebin-container
|
||||||
|
image: prietus/pastebin-app:1.4
|
||||||
|
ports:
|
||||||
|
- containerPort: 5000
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 1000
|
||||||
|
runAsGroup: 1000
|
||||||
|
env:
|
||||||
|
# Variables de entorno para configuración SMTP
|
||||||
|
- name: SMTP_SERVER
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_SERVER
|
||||||
|
- name: SMTP_PORT
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: SMTP_PORT
|
||||||
|
- name: SMTP_USERNAME
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SMTP_USERNAME
|
||||||
|
- name: SMTP_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SMTP_PASSWORD
|
||||||
|
# Variables adicionales
|
||||||
|
- name: VALID_USER
|
||||||
|
value: "admin"
|
||||||
|
- name: VALID_PASS
|
||||||
|
value: "wasamasa123"
|
||||||
|
- name: SECRET_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: pastebin-secret
|
||||||
|
key: SECRET_KEY
|
||||||
|
- name: JWT_EXP_DELTA_SECONDS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
name: pastebin-config
|
||||||
|
key: JWT_EXP_DELTA_SECONDS
|
||||||
|
volumeMounts:
|
||||||
|
- name: database
|
||||||
|
mountPath: /app/database
|
||||||
|
- name: uploads
|
||||||
|
mountPath: /app/uploads
|
||||||
|
# Declaración de volúmenes
|
||||||
|
volumes:
|
||||||
|
- name: database
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: database-pvc
|
||||||
|
- name: uploads
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: uploads-pvc
|
||||||
|
|
25
k8s/sqlite/pastebin-ingress.yaml
Normal file
25
k8s/sqlite/pastebin-ingress.yaml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: pastebin-ingress
|
||||||
|
namespace: default
|
||||||
|
annotations:
|
||||||
|
kubernetes.io/ingress.class: traefik
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-prod-dns
|
||||||
|
spec:
|
||||||
|
rules:
|
||||||
|
- host: paste.priet.us
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: pastebin-service # Nombre del Service asociado a tu aplicación
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- paste.priet.us
|
||||||
|
secretName: pastebin-tls
|
||||||
|
|
10
k8s/sqlite/pastebin-secret.yaml
Normal file
10
k8s/sqlite/pastebin-secret.yaml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: pastebin-secret
|
||||||
|
namespace: default
|
||||||
|
type: Opaque
|
||||||
|
data:
|
||||||
|
SECRET_KEY: d2FzYW1sdfsdfhc2ExMjM= # Este valor debe ser codificado en base64
|
||||||
|
SMTP_USERNAME: bWVAcHJsdfsdfpZXQudXM= # Base64 de tu username
|
||||||
|
SMTP_PASSWORD: d2FzYW1hc2sdfsdfExMjM=
|
13
k8s/sqlite/pastebin-service.yaml
Normal file
13
k8s/sqlite/pastebin-service.yaml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: pastebin-service
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: pastebin
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 5000
|
||||||
|
type: ClusterIP # Usa ClusterIP o NodePort según tus necesidades
|
||||||
|
|
12
k8s/sqlite/pv.yaml
Normal file
12
k8s/sqlite/pv.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolume
|
||||||
|
metadata:
|
||||||
|
name: uploads-pv
|
||||||
|
spec:
|
||||||
|
capacity:
|
||||||
|
storage: 50Gi
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
hostPath: # Cambia a un proveedor como AWS, GCP, etc.
|
||||||
|
path: "/mnt/data/uploads"
|
||||||
|
|
22
k8s/sqlite/pvc.yaml
Normal file
22
k8s/sqlite/pvc.yaml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: uploads-pvc
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 50Gi
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: database-pvc
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 5Gi
|
||||||
|
|
489
pastebin_client.sh
Executable file
489
pastebin_client.sh
Executable file
@ -0,0 +1,489 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
API_URL="http://localhost:5000"
|
||||||
|
TOKEN_FILE="$HOME/.pastebin_token"
|
||||||
|
|
||||||
|
load_token() {
|
||||||
|
[[ -f "$TOKEN_FILE" ]] && TOKEN=$(cat "$TOKEN_FILE") || TOKEN=""
|
||||||
|
}
|
||||||
|
|
||||||
|
save_token() {
|
||||||
|
echo "$TOKEN" > "$TOKEN_FILE"
|
||||||
|
}
|
||||||
|
|
||||||
|
authenticate() {
|
||||||
|
local username="$1" password="$2"
|
||||||
|
response=$(curl -s -X POST "$API_URL/api/token" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"username": "'$username'", "password": "'$password'"}')
|
||||||
|
if echo "$response" | grep -q 'token'; then
|
||||||
|
TOKEN=$(echo "$response" | jq -r '.token')
|
||||||
|
save_token
|
||||||
|
echo "Authentication successful. Token saved."
|
||||||
|
else
|
||||||
|
echo "Authentication failed: $(echo "$response" | jq -r '.error')"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
list_users() {
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $TOKEN" "$API_URL/api/users")
|
||||||
|
|
||||||
|
error_msg=$(echo "$response" | jq -r '.error // empty')
|
||||||
|
if [[ -n "$error_msg" ]]; then
|
||||||
|
echo "Error: $error_msg"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
usernames=$(echo "$response" | jq -r '.users[]')
|
||||||
|
echo "$usernames"
|
||||||
|
}
|
||||||
|
|
||||||
|
remove_gps_metadata() {
|
||||||
|
local paste_id="$1"
|
||||||
|
load_token
|
||||||
|
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$paste_id" ]]; then
|
||||||
|
echo "Usage: $0 remove_gps <paste_id>"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
response=$(curl -s -X POST "$API_URL/api/removegps" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d "{\"paste_id\": $paste_id}")
|
||||||
|
|
||||||
|
success=$(echo "$response" | jq -r '.success // empty')
|
||||||
|
|
||||||
|
if [[ "$success" == "true" ]]; then
|
||||||
|
echo "✅ GPS metadata successfully removed from paste ID $paste_id"
|
||||||
|
else
|
||||||
|
error_msg=$(echo "$response" | jq -r '.error // empty')
|
||||||
|
echo "❌ Error: $error_msg"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
edit_paste() {
|
||||||
|
local paste_id="$1"
|
||||||
|
load_token
|
||||||
|
|
||||||
|
# Chequear token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$paste_id" ]]; then
|
||||||
|
echo "Usage: $0 edit <paste_id>"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 1. Descargar contenido JSON del paste
|
||||||
|
echo "Fetching current content of paste $paste_id..."
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $TOKEN" \
|
||||||
|
"$API_URL/paste/$paste_id/json")
|
||||||
|
|
||||||
|
# Checar error
|
||||||
|
error_msg=$(echo "$response" | jq -r '.error // empty')
|
||||||
|
if [[ -n "$error_msg" ]]; then
|
||||||
|
echo "Error: $error_msg"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 2. Extraer el contenido, filename, etc.
|
||||||
|
current_content=$(echo "$response" | jq -r '.content // empty')
|
||||||
|
paste_filename=$(echo "$response" | jq -r '.filename // empty')
|
||||||
|
paste_language=$(echo "$response" | jq -r '.language // empty')
|
||||||
|
|
||||||
|
# 3. Decidir la extensión local:
|
||||||
|
# a) tratar de inferirla de paste_filename
|
||||||
|
# b) si no hay, usar language
|
||||||
|
# c) fallback a "txt"
|
||||||
|
|
||||||
|
# Extraer extensión del filename, si existe
|
||||||
|
extension="txt"
|
||||||
|
if [[ -n "$paste_filename" ]]; then
|
||||||
|
# e.g. "myscript.py" -> ".py"
|
||||||
|
ext_from_name="${paste_filename##*.}" # todo lo que viene después de la última.
|
||||||
|
if [[ "$ext_from_name" != "$paste_filename" ]]; then
|
||||||
|
extension="$ext_from_name"
|
||||||
|
fi
|
||||||
|
elif [[ -n "$paste_language" ]]; then
|
||||||
|
# Una pequeña tabla de mapeo básico
|
||||||
|
case "$paste_language" in
|
||||||
|
python) extension="py" ;;
|
||||||
|
javascript|js) extension="js" ;;
|
||||||
|
typescript|ts) extension="ts" ;;
|
||||||
|
java) extension="java" ;;
|
||||||
|
c) extension="c" ;;
|
||||||
|
cpp|c++) extension="cpp" ;;
|
||||||
|
bash|shell) extension="sh" ;;
|
||||||
|
html) extension="html" ;;
|
||||||
|
css) extension="css" ;;
|
||||||
|
json) extension="json" ;;
|
||||||
|
sql) extension="sql" ;;
|
||||||
|
*) extension="txt" ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 4. Crear archivo temporal con esa extensión
|
||||||
|
temp_file=$(mktemp "/tmp/paste_${paste_id}_XXXXXX.${extension}")
|
||||||
|
|
||||||
|
# 5. Guardar el contenido en el archivo y abrir editor
|
||||||
|
echo "$current_content" > "$temp_file"
|
||||||
|
"${EDITOR:-nano}" "$temp_file"
|
||||||
|
|
||||||
|
# 6. Leer el contenido editado
|
||||||
|
new_content=$(cat "$temp_file")
|
||||||
|
if [[ -z "$new_content" ]]; then
|
||||||
|
echo "No content provided. Aborting."
|
||||||
|
rm -f "$temp_file"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 7. Convertir a JSON con jq -Rs '.'
|
||||||
|
new_content_json=$(echo "$new_content" | jq -Rs '.')
|
||||||
|
|
||||||
|
# 8. Enviar PUT /api/paste/<paste_id> con el nuevo contenido
|
||||||
|
update_response=$(curl -s -X PUT "$API_URL/api/paste/$paste_id" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"content":'"$new_content_json"'}')
|
||||||
|
|
||||||
|
# 9. Mostrar resultado
|
||||||
|
msg=$(echo "$update_response" | jq -r '.message // .error // empty')
|
||||||
|
if [[ -n "$msg" ]]; then
|
||||||
|
echo "$msg"
|
||||||
|
else
|
||||||
|
echo "$update_response"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 10. Limpieza
|
||||||
|
rm -f "$temp_file"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
unshare_paste() {
|
||||||
|
local paste_id="$1" username="$2"
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$paste_id" || -z "$username" ]]; then
|
||||||
|
echo "Error: Paste ID and username are required."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
response=$(curl -s -X POST "$API_URL/api/paste/$paste_id/unshare" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"username": "'$username'"}')
|
||||||
|
|
||||||
|
if echo "$response" | grep -q '"message"'; then
|
||||||
|
echo "$response" | jq -r '.message'
|
||||||
|
else
|
||||||
|
echo "Error: $(echo "$response" | jq -r '.error')"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
share_paste() {
|
||||||
|
local paste_id="$1"
|
||||||
|
local username="$2"
|
||||||
|
local can_edit_input="${3:-false}" # Por defecto, no se permite editar
|
||||||
|
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Validación de argumentos
|
||||||
|
if [[ -z "$paste_id" || -z "$username" ]]; then
|
||||||
|
echo "Usage: share_paste <paste_id> <username> [can_edit (true|false)]"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Validar que can_edit sea 'true' o 'false'
|
||||||
|
if [[ "$can_edit_input" != "true" && "$can_edit_input" != "false" ]]; then
|
||||||
|
echo "Error: can_edit must be 'true' or 'false'."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Convertir la entrada can_edit a booleano JSON
|
||||||
|
if [[ "$can_edit_input" == "true" ]]; then
|
||||||
|
can_edit_json=true
|
||||||
|
else
|
||||||
|
can_edit_json=false
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Construir el JSON de manera segura usando jq
|
||||||
|
json_data=$(jq -n --arg username "$username" --argjson can_edit "$can_edit_json" \
|
||||||
|
'{username: $username, can_edit: $can_edit}')
|
||||||
|
|
||||||
|
# Verificar que json_data es válido
|
||||||
|
if [[ -z "$json_data" ]]; then
|
||||||
|
echo "Error: Failed to construct JSON data."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Realizar la solicitud POST al endpoint y capturar la respuesta y el código HTTP
|
||||||
|
response=$(curl -s -w "\n%{http_code}" -X POST "$API_URL/api/paste/$paste_id/share" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d "$json_data")
|
||||||
|
|
||||||
|
# Separar el cuerpo de la respuesta y el código de estado
|
||||||
|
http_body=$(echo "$response" | sed '$d')
|
||||||
|
http_code=$(echo "$response" | tail -n1)
|
||||||
|
|
||||||
|
# Manejar la respuesta según el código de estado
|
||||||
|
if [[ "$http_code" == "200" ]]; then
|
||||||
|
echo "$http_body" | jq
|
||||||
|
elif [[ "$http_code" == "400" || "$http_code" == "403" || "$http_code" == "404" || "$http_code" == "500" ]]; then
|
||||||
|
echo "$http_body" | jq -r '.error // .message'
|
||||||
|
else
|
||||||
|
echo "Unexpected HTTP code: $http_code"
|
||||||
|
echo "$http_body"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
list_shared_with_others() {
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $TOKEN" "$API_URL/api/shared_with_others")
|
||||||
|
echo "$response" | jq
|
||||||
|
}
|
||||||
|
|
||||||
|
list_shared_with_me() {
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $TOKEN" "$API_URL/api/shared_with_me")
|
||||||
|
echo "$response" | jq
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
list_favorites() {
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $TOKEN" "$API_URL/api/favorites")
|
||||||
|
echo "$response" | jq
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
download() {
|
||||||
|
local paste_id="$1"
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Solicitar el archivo y guardar las cabeceras en un archivo temporal
|
||||||
|
response=$(curl -s -w "%{http_code}" -D headers.tmp -o "paste_${paste_id}.tmp" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" "$API_URL/api/paste/$paste_id/download")
|
||||||
|
|
||||||
|
# Extraer el código HTTP del final de la respuesta
|
||||||
|
http_code=$(echo "$response" | tail -n1)
|
||||||
|
|
||||||
|
if [[ "$http_code" -eq 200 ]]; then
|
||||||
|
# Extraer el nombre del archivo del encabezado "Content-Disposition"
|
||||||
|
filename=$(grep -i "Content-Disposition" headers.tmp | grep -o 'filename="[^"]*"' | sed 's/filename=//' | tr -d '"')
|
||||||
|
if [[ -z "$filename" ]]; then
|
||||||
|
# Si no se encuentra el encabezado, usar un nombre genérico
|
||||||
|
file_extension=$(file --mime-type -b "paste_${paste_id}.tmp" | awk -F'/' '{print $2}')
|
||||||
|
filename="paste_${paste_id}.${file_extension}"
|
||||||
|
fi
|
||||||
|
mv "paste_${paste_id}.tmp" "$filename"
|
||||||
|
echo "Paste $paste_id downloaded to $filename"
|
||||||
|
elif [[ "$http_code" -eq 403 ]]; then
|
||||||
|
echo "Error: You do not have permission to download paste $paste_id."
|
||||||
|
rm -f "paste_${paste_id}.tmp"
|
||||||
|
elif [[ "$http_code" -eq 404 ]]; then
|
||||||
|
echo "Error: Paste $paste_id not found."
|
||||||
|
rm -f "paste_${paste_id}.tmp"
|
||||||
|
else
|
||||||
|
echo "Failed to download paste $paste_id (HTTP code: $http_code)"
|
||||||
|
rm -f "paste_${paste_id}.tmp"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Limpieza
|
||||||
|
rm -f headers.tmp
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
download_favorites() {
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
response=$(curl -s -H "Authorization: Bearer $TOKEN" "$API_URL/api/favorites")
|
||||||
|
echo "$response" | jq -r '.[] | @base64' | while read paste; do
|
||||||
|
paste_id=$(echo "$paste" | base64 --decode | jq -r '.id')
|
||||||
|
download "$paste_id"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
create_paste() {
|
||||||
|
# local lang="$1"
|
||||||
|
local expire="${1:-yes}"
|
||||||
|
local private="${2:-no}" # ✅ Nuevo parámetro opcional, por defecto "no"
|
||||||
|
|
||||||
|
echo "Enter the content for the paste (Ctrl+D to finish):"
|
||||||
|
content=$(cat)
|
||||||
|
|
||||||
|
[[ -z "$content" ]] && { echo "Error: Paste content cannot be empty."; exit 1; }
|
||||||
|
|
||||||
|
response=$(echo "$content" | curl -s -X POST "$API_URL/paste" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-F "c=@-" \
|
||||||
|
-F "expire=$expire" \
|
||||||
|
$( [[ "$private" == "yes" ]] && echo "-F private=true" ) ) # ✅ Se envía "private=true" solo si es necesario
|
||||||
|
|
||||||
|
echo "$response" | jq -r '.url // .error'
|
||||||
|
}
|
||||||
|
|
||||||
|
upload_file() {
|
||||||
|
local file="$1"
|
||||||
|
local expire="${2:-yes}"
|
||||||
|
local private="${3:-no}"
|
||||||
|
|
||||||
|
[[ ! -f "$file" ]] && { echo "Error: File not found."; exit 1; }
|
||||||
|
|
||||||
|
|
||||||
|
response=$(curl -s -X POST "$API_URL/paste" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-F "c=@$file" \
|
||||||
|
-F "expire=$expire" \
|
||||||
|
$( [[ "$private" == "yes" ]] && echo "-F private=true" ) ) # ✅ Se envía "private=true" solo si es necesario
|
||||||
|
|
||||||
|
echo "$response" | jq -r '.url // .error'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
view_paste() {
|
||||||
|
local paste_id="$1"
|
||||||
|
response=$(curl -s "$API_URL/paste/$paste_id/json" \
|
||||||
|
-H "Authorization: Bearer $TOKEN")
|
||||||
|
echo "$response" | jq -r '.content // .error'
|
||||||
|
}
|
||||||
|
|
||||||
|
list_pastes() {
|
||||||
|
response=$(curl -s "$API_URL/pastes" -H "Authorization: Bearer $TOKEN")
|
||||||
|
echo "$response" | jq
|
||||||
|
}
|
||||||
|
|
||||||
|
delete_paste() {
|
||||||
|
local paste_id="$1"
|
||||||
|
response=$(curl -s -X DELETE "$API_URL/paste/$paste_id" \
|
||||||
|
-H "Authorization: Bearer $TOKEN")
|
||||||
|
echo "$response"
|
||||||
|
}
|
||||||
|
|
||||||
|
view_raw() {
|
||||||
|
local paste_id="$1"
|
||||||
|
response=$(curl -s "$API_URL/paste/$paste_id/raw" \
|
||||||
|
-H "Authorization: Bearer $TOKEN")
|
||||||
|
echo "$response"
|
||||||
|
}
|
||||||
|
|
||||||
|
register_user() {
|
||||||
|
local username="$1" password="$2"
|
||||||
|
response=$(curl -s -X POST "$API_URL/register" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-d '{"username": "'$username'", "password": "'$password'"}')
|
||||||
|
echo "$response"
|
||||||
|
}
|
||||||
|
|
||||||
|
details() {
|
||||||
|
response=$(curl -s -X GET "$API_URL/user/details" \
|
||||||
|
-H "Authorization: Bearer $TOKEN")
|
||||||
|
echo "$response" | jq
|
||||||
|
}
|
||||||
|
|
||||||
|
search_pastes() {
|
||||||
|
local query="$1"
|
||||||
|
response=$(curl -s -X GET "$API_URL/pastes/search?q=$query" \
|
||||||
|
-H "Authorization: Bearer $TOKEN")
|
||||||
|
echo "$response" | jq
|
||||||
|
}
|
||||||
|
|
||||||
|
add_to_favorites() {
|
||||||
|
local paste_id="$1"
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
response=$(curl -s -X POST "$API_URL/api/paste/$paste_id/favorite" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-H "Content-Type: application/json")
|
||||||
|
echo "$response"
|
||||||
|
}
|
||||||
|
|
||||||
|
remove_from_favorites() {
|
||||||
|
local paste_id="$1"
|
||||||
|
load_token
|
||||||
|
if [[ -z "$TOKEN" ]]; then
|
||||||
|
echo "Error: No token found. Please authenticate first."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
response=$(curl -s -X POST "$API_URL/api/paste/$paste_id/unfavorite" \
|
||||||
|
-H "Authorization: Bearer $TOKEN" \
|
||||||
|
-H "Content-Type: application/json")
|
||||||
|
echo "$response"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
load_token
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
login) authenticate "$2" "$3" ;;
|
||||||
|
edit) edit_paste "$2" ;;
|
||||||
|
shared_with_others) list_shared_with_others ;;
|
||||||
|
shared_with_me) list_shared_with_me ;;
|
||||||
|
download) download "$2" ;;
|
||||||
|
list_favorites) list_favorites ;;
|
||||||
|
remove_gps) remove_gps_metadata "$2" ;;
|
||||||
|
favorite) add_to_favorites "$2" ;;
|
||||||
|
unfavorite) remove_from_favorites "$2" ;;
|
||||||
|
create) create_paste "$2" "$3" ;;
|
||||||
|
upload) upload_file "$2" "$3" "$4" ;;
|
||||||
|
view) view_paste "$2" ;;
|
||||||
|
share) share_paste "$2" "$3" "$4" ;;
|
||||||
|
unshare) unshare_paste "$2" "$3" ;;
|
||||||
|
list) list_pastes ;;
|
||||||
|
delete) delete_paste "$2" ;;
|
||||||
|
view_raw) view_raw "$2" ;;
|
||||||
|
register) register_user "$2" "$3" ;;
|
||||||
|
details) details ;;
|
||||||
|
search) search_pastes "$2" ;;
|
||||||
|
*) echo "Usage: $0 {login|create|upload|view|list|delete|view_raw|register|details|search|favorite|unfavorite|shared_with_others|shared_with_me|share|unshare|remove_gps}" ;;
|
||||||
|
esac
|
||||||
|
|
19
requirements.txt
Normal file
19
requirements.txt
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
Flask==2.2.3
|
||||||
|
Flask-SQLAlchemy>=3.0.0
|
||||||
|
PyJWT==2.7.0
|
||||||
|
Werkzeug==2.2.3
|
||||||
|
SQLAlchemy<2.0
|
||||||
|
gunicorn
|
||||||
|
psycopg2>=2.9.10
|
||||||
|
python-magic
|
||||||
|
pymediainfo
|
||||||
|
flask-login
|
||||||
|
markdown
|
||||||
|
elasticsearch==8.9.0
|
||||||
|
Flask-Migrate==4.0.4
|
||||||
|
rapidfuzz
|
||||||
|
flask-apscheduler
|
||||||
|
Pillow
|
||||||
|
guesslang>=2.0.0
|
||||||
|
pytesseract
|
||||||
|
pygments==2.15.1
|
BIN
src/__pycache__/auth.cpython-312.pyc
Normal file
BIN
src/__pycache__/auth.cpython-312.pyc
Normal file
Binary file not shown.
BIN
src/__pycache__/models.cpython-312.pyc
Normal file
BIN
src/__pycache__/models.cpython-312.pyc
Normal file
Binary file not shown.
BIN
src/__pycache__/routes.cpython-312.pyc
Normal file
BIN
src/__pycache__/routes.cpython-312.pyc
Normal file
Binary file not shown.
183
src/__pycache__/routes.d.er
Normal file
183
src/__pycache__/routes.d.er
Normal file
@ -0,0 +1,183 @@
|
|||||||
|
##[pylyzer] failed /home/teraflops/git/app/src/routes.py 1739030723 106467
|
||||||
|
.smtplib: Never
|
||||||
|
|
||||||
|
.___v_desugar_1: Never
|
||||||
|
.MIMEText: Never
|
||||||
|
.os: Never
|
||||||
|
|
||||||
|
.mimetypes: Never
|
||||||
|
|
||||||
|
.___v_desugar_2 = pyimport "__init__"
|
||||||
|
.__init__ = pyimport "__init__"
|
||||||
|
.request: Never
|
||||||
|
.jsonify: (*args: Obj, **kwargs := Obj) -> Never
|
||||||
|
.send_from_directory: (directory: Obj, path: Obj, **kwargs := Obj) -> wrappers.Response
|
||||||
|
.abort: (code: Int or wrappers.response.Response, *args: Obj, **kwargs := Obj) -> Never
|
||||||
|
.render_template: (template_name_or_list: global::List!(_: Type, _: Nat), **context := Obj) -> Str
|
||||||
|
.redirect: (location: Str, code: Int := Int, _ := {wrappers.Response}) -> wrappers.response.Response
|
||||||
|
.url_for: (endpoint: Str, _anchor: NoneType or Str := NoneType or Str, _method: NoneType or Str := NoneType or Str, _scheme: NoneType or Str := NoneType or Str, _external: NoneType or Bool := NoneType or Bool, **values := Obj) -> Str
|
||||||
|
.flash: (message: Str, category: Str := Str) -> NoneType
|
||||||
|
.session: Never
|
||||||
|
.___v_desugar_3: Never
|
||||||
|
.db: Never
|
||||||
|
.Paste: Never
|
||||||
|
.User: Never
|
||||||
|
.shared_pastes: Never
|
||||||
|
.___v_desugar_4: Never
|
||||||
|
.generate_token: Never
|
||||||
|
.___v_desugar_5: Never
|
||||||
|
.UPLOAD_FOLDER: Never
|
||||||
|
.SMTP_SERVER: Never
|
||||||
|
.SMTP_PORT: Never
|
||||||
|
.SMTP_USERNAME: Never
|
||||||
|
.SMTP_PASSWORD: Never
|
||||||
|
.SMTP_USE_TLS: Never
|
||||||
|
.SMTP_USE_SSL: Never
|
||||||
|
.ROLE_STORAGE_LIMITS: Never
|
||||||
|
.___v_desugar_6 = pyimport "__init__"
|
||||||
|
|
||||||
|
.highlight: (code: Obj, lexer: Obj, formatter: Never, outfile: Bool := Bool) -> Never
|
||||||
|
.___v_desugar_7 = pyimport "__init__"
|
||||||
|
|
||||||
|
.guess_lexer: (_text: global::Bytes, **options := NoneType) -> Never
|
||||||
|
.get_lexer_by_name: (_alias: Never, **options := Obj) -> Never
|
||||||
|
.guess_lexer_for_filename: (_fn: Obj, _text: Obj, **options := Obj) -> Never
|
||||||
|
.___v_desugar_8 = pyimport "__init__"
|
||||||
|
|
||||||
|
.HtmlFormatter: Never
|
||||||
|
.___v_desugar_9 = pyimport "util"
|
||||||
|
.util = pyimport "util"
|
||||||
|
.ClassNotFound: {pygments.util.ClassNotFound}
|
||||||
|
.___v_desugar_10 = pyimport "__init__"
|
||||||
|
|
||||||
|
.func: Never
|
||||||
|
.magic = pyimport "__init__"
|
||||||
|
|
||||||
|
|
||||||
|
.___v_desugar_11 = pyimport "utils"
|
||||||
|
.utils = pyimport "utils"
|
||||||
|
.secure_filename: (filename: Str) -> Str
|
||||||
|
.logging: Never
|
||||||
|
|
||||||
|
.___v_desugar_12: Never
|
||||||
|
.BytesIO: Never
|
||||||
|
.___v_desugar_13 = pyimport "__init__"
|
||||||
|
|
||||||
|
.send_file: (path_or_file: Obj, mimetype: NoneType or Str := NoneType or Str, as_attachment: Bool := Bool, download_name: NoneType or Str := NoneType or Str, conditional: Bool := Bool, etag: Bool or Str := Bool or Str, last_modified: Obj := Obj, max_age: NoneType or Int := NoneType or Int) -> wrappers.Response
|
||||||
|
.Response: Never
|
||||||
|
.uuid: Never
|
||||||
|
|
||||||
|
.___v_desugar_14: Never
|
||||||
|
.MediaInfo: Never
|
||||||
|
.secrets: Never
|
||||||
|
|
||||||
|
.___v_desugar_15 = pyimport "exc"
|
||||||
|
.exc = pyimport "exc"
|
||||||
|
.SQLAlchemyError: {sqlalchemy.exc.SQLAlchemyError}
|
||||||
|
.___v_desugar_16 = pyimport "__init__"
|
||||||
|
|
||||||
|
.get_all_styles: () -> NoneType
|
||||||
|
.___v_desugar_17: Never
|
||||||
|
.datetime: Never
|
||||||
|
.___v_desugar_18: Never
|
||||||
|
.login_required: Never
|
||||||
|
.___v_desugar_19: Never
|
||||||
|
.login_user: Never
|
||||||
|
.___v_desugar_20: Never
|
||||||
|
.logout_user: Never
|
||||||
|
.___v_desugar_21 = pyimport "security"
|
||||||
|
.security = pyimport "security"
|
||||||
|
.check_password_hash: (pwhash: Str, password: Str) -> Bool
|
||||||
|
.___v_desugar_22: Never
|
||||||
|
.jwt_required: Never
|
||||||
|
.___v_desugar_23: Never
|
||||||
|
.current_user: Never
|
||||||
|
.___v_desugar_24 = pyimport "__init__"
|
||||||
|
|
||||||
|
.markdown: (text: Str, **kwargs := Obj) -> Str
|
||||||
|
.___v_desugar_25: Never
|
||||||
|
.defaultdict: Never
|
||||||
|
.jwt = pyimport "__init__"
|
||||||
|
|
||||||
|
|
||||||
|
.___v_desugar_26 = pyimport "__init__"
|
||||||
|
|
||||||
|
app = pyimport "app"
|
||||||
|
.current_app: app.Flask
|
||||||
|
.___v_desugar_27: Never
|
||||||
|
.Elasticsearch: Never
|
||||||
|
.___v_desugar_28: Never
|
||||||
|
.datetime: Never
|
||||||
|
.___v_desugar_29: Never
|
||||||
|
.Favorite: Never
|
||||||
|
.___v_desugar_30: Never
|
||||||
|
.UPLOAD_FOLDER: Never
|
||||||
|
.process = pyimport "process"
|
||||||
|
.fuzz = pyimport "fuzz"
|
||||||
|
|
||||||
|
.___v_desugar_31 = pyimport "__init__"
|
||||||
|
|
||||||
|
.or_: Never
|
||||||
|
.json: Never
|
||||||
|
|
||||||
|
.___v_desugar_32: Never
|
||||||
|
.datetime: Never
|
||||||
|
.timedelta: Never
|
||||||
|
.___v_desugar_33 = pyimport "__init__"
|
||||||
|
|
||||||
|
.get_all_lexers: (plugins: Bool := Bool) -> NoneType
|
||||||
|
.___v_desugar_34 = pyimport "util"
|
||||||
|
|
||||||
|
.ClassNotFound: {pygments.util.ClassNotFound}
|
||||||
|
.base64: Never
|
||||||
|
|
||||||
|
.Image = pyimport "Image"
|
||||||
|
|
||||||
|
.___v_desugar_35 = pyimport "ExifTags"
|
||||||
|
.ExifTags = pyimport "ExifTags"
|
||||||
|
.TAGS: Never
|
||||||
|
.GPSTAGS: Never
|
||||||
|
.es: Never
|
||||||
|
.get_pygments_language_mappings: Never
|
||||||
|
.register_error_handlers: (app: Obj) -> NoneType
|
||||||
|
.delete_expired_pastes: () -> NoneType
|
||||||
|
.calculate_storage_used: (user_id: Obj) -> Float
|
||||||
|
.get_shared_pastes: |Type_390527 <: Structural({.id = ?E}), E: Type|(user: Type_390527, paste_filters: Bool := Bool, page: Obj := Obj, per_page: Obj := Obj) -> Never
|
||||||
|
.delete_paste_from_index: |Type_474413: Type, T <: Structural({.id = ?474413 and ?474411}), Type_474411: Type|(paste: T) -> NoneType
|
||||||
|
.calculate_stats: |R <: Bool|(user_id: Obj := Obj, start_date: R := R, end_date: R := R) -> global::Dict!({{"counts_text"}: global::List!(Never, 0), {"total_media_pastes"}: Never, {"pastes"}: Never, {"counts_media"}: global::List!(Never, 0), {"counts_file"}: global::List!(Never, 0), {"counts_compressed"}: global::List!(Never, 0), {"total_file_pastes"}: Never, {"total_text_pastes"}: Never, {"total_pastes"}: Nat, {"total_compressed_pastes"}: Never, {"languages"}: global::List!(Never, _: Nat), {"total_size"}: global::Add(Never)})
|
||||||
|
.index_paste: |Type_475054 <: Ref(Obj), Type_475063: Type, Type_390545 <: Structural({.title = ?475063; .owner_id = ?475067; .filename = ?475054 and ?R; .created_at = Never; .id = ?475062 and ?475070}), Type_475062: Type, Type_475070: Type, Type_475067: Type, R: Type|(paste: Type_390545) -> NoneType
|
||||||
|
.get_current_user: () -> Never
|
||||||
|
|
||||||
|
.highlight_code: (content: global::Bytes, language: Never := Never, filename: Bool := Bool) -> Never
|
||||||
|
.MEDIA_MIME_TYPES: {Type_v_global_251113: global::Tuple([Str, Str, Str, Str]) | Type_v_global_251113 == ("image.", "video.", "audio.", "application.pdf")}
|
||||||
|
.TEXT_BASED_APPLICATION_MIME_TYPES: {Type_v_global_251115: global::Tuple([Str, Str, Str, Str, Str, Str]) | Type_v_global_251115 == ("(...)", "(...)", "application.xml", "(...)", "application.sql", "text.xml")}
|
||||||
|
.LANGUAGE_TO_EXTENSION: Never
|
||||||
|
.EXTENSION_TO_LANGUAGE: Never
|
||||||
|
.FILENAME_TO_LANGUAGE: Never
|
||||||
|
.mime: magic.Magic
|
||||||
|
.os: Never
|
||||||
|
|
||||||
|
.logging: Never
|
||||||
|
|
||||||
|
.___v_desugar_36 = pyimport "__init__"
|
||||||
|
|
||||||
|
.guess_lexer: (_text: global::Bytes, **options := NoneType) -> Never
|
||||||
|
.___v_desugar_37 = pyimport "util"
|
||||||
|
|
||||||
|
.ClassNotFound: Never
|
||||||
|
.COMPRESSED_MIME_TYPES: Never
|
||||||
|
.COMPRESSED_EXTENSIONS: Never
|
||||||
|
.os: Never
|
||||||
|
|
||||||
|
.logging: Never
|
||||||
|
|
||||||
|
.___v_desugar_38 = pyimport "__init__"
|
||||||
|
|
||||||
|
.guess_lexer: Never
|
||||||
|
.___v_desugar_39 = pyimport "util"
|
||||||
|
|
||||||
|
.ClassNotFound: Never
|
||||||
|
.COMPRESSED_MIME_TYPES: Never
|
||||||
|
.COMPRESSED_EXTENSIONS: Never
|
||||||
|
.detect_language: (content: Never, unique_filename: Bool := Bool, original_filename: Bool := Bool, detected_mime_type: Structural({.__and__ = (self: Never, Obj) -> Bool}) := {None} and Structural({.__and__ = (self: Never, Obj) -> Bool})) -> {"unknown"}
|
||||||
|
.init_routes: (app: Obj) -> NoneType
|
51
src/auth.py
Normal file
51
src/auth.py
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
import jwt
|
||||||
|
import datetime
|
||||||
|
from flask import request, jsonify
|
||||||
|
from functools import wraps
|
||||||
|
from config import SECRET_KEY, JWT_ALGORITHM, JWT_EXP_DELTA_SECONDS
|
||||||
|
from src.models import User
|
||||||
|
|
||||||
|
# Generar token JWT
|
||||||
|
def generate_token(username):
|
||||||
|
payload = {
|
||||||
|
"username": username,
|
||||||
|
"exp": datetime.datetime.utcnow() + datetime.timedelta(seconds=JWT_EXP_DELTA_SECONDS)
|
||||||
|
}
|
||||||
|
return jwt.encode(payload, SECRET_KEY, algorithm=JWT_ALGORITHM)
|
||||||
|
|
||||||
|
# Decodificar token JWT
|
||||||
|
def decode_token(token):
|
||||||
|
try:
|
||||||
|
payload = jwt.decode(token, SECRET_KEY, algorithms=[JWT_ALGORITHM])
|
||||||
|
return payload
|
||||||
|
except jwt.ExpiredSignatureError:
|
||||||
|
return None
|
||||||
|
except jwt.InvalidTokenError:
|
||||||
|
return None
|
||||||
|
|
||||||
|
# Decorador para rutas protegidas con JWT
|
||||||
|
def jwt_required(f):
|
||||||
|
@wraps(f)
|
||||||
|
def decorated_function(*args, **kwargs):
|
||||||
|
auth_header = request.headers.get('Authorization')
|
||||||
|
if not auth_header:
|
||||||
|
return jsonify({"error": "Authorization header missing"}), 401
|
||||||
|
|
||||||
|
# Validar que el formato sea correcto
|
||||||
|
parts = auth_header.split(" ")
|
||||||
|
if len(parts) != 2 or parts[0] != "Bearer":
|
||||||
|
return jsonify({"error": "Invalid Authorization header format"}), 401
|
||||||
|
|
||||||
|
token = parts[1]
|
||||||
|
try:
|
||||||
|
payload = jwt.decode(token, SECRET_KEY, algorithms=[JWT_ALGORITHM])
|
||||||
|
user = User.query.filter_by(username=payload['username']).first()
|
||||||
|
if not user:
|
||||||
|
return jsonify({"error": "User not found"}), 401
|
||||||
|
request.user = user
|
||||||
|
except (jwt.ExpiredSignatureError, jwt.InvalidTokenError):
|
||||||
|
return jsonify({"error": "Invalid or expired token"}), 401
|
||||||
|
|
||||||
|
return f(*args, **kwargs)
|
||||||
|
return decorated_function
|
||||||
|
|
26
src/constants.py
Normal file
26
src/constants.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
LANGUAGE_TO_EXTENSION = {
|
||||||
|
"python": "py",
|
||||||
|
"javascript": "js",
|
||||||
|
"java": "java",
|
||||||
|
"csharp": "cs",
|
||||||
|
"cpp": "cpp",
|
||||||
|
"ruby": "rb",
|
||||||
|
"go": "go",
|
||||||
|
"html": "html",
|
||||||
|
"css": "css",
|
||||||
|
"php": "php",
|
||||||
|
"swift": "swift",
|
||||||
|
"kotlin": "kt",
|
||||||
|
"rust": "rs",
|
||||||
|
"typescript": "ts",
|
||||||
|
"bash": "sh",
|
||||||
|
"plaintext": "txt",
|
||||||
|
"json": "json",
|
||||||
|
"yaml": "yml",
|
||||||
|
"toml": "toml",
|
||||||
|
"markdown": "md",
|
||||||
|
"sql": "sql",
|
||||||
|
"xml": "xml",
|
||||||
|
"lua": "lua"
|
||||||
|
}
|
||||||
|
|
208
src/models.py
Normal file
208
src/models.py
Normal file
@ -0,0 +1,208 @@
|
|||||||
|
from flask_sqlalchemy import SQLAlchemy
|
||||||
|
from datetime import datetime
|
||||||
|
from werkzeug.security import generate_password_hash, check_password_hash
|
||||||
|
import os
|
||||||
|
from config import UPLOAD_FOLDER
|
||||||
|
from flask_login import UserMixin
|
||||||
|
|
||||||
|
db = SQLAlchemy()
|
||||||
|
|
||||||
|
class Favorite(db.Model):
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
|
||||||
|
paste_id = db.Column(db.Integer, db.ForeignKey('paste.id'), nullable=False)
|
||||||
|
created_at = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
|
||||||
|
|
||||||
|
user = db.relationship('User', backref=db.backref('favorites', lazy=True))
|
||||||
|
paste = db.relationship('Paste', backref=db.backref('favorited_by', lazy=True))
|
||||||
|
|
||||||
|
paste_favorites = db.Table(
|
||||||
|
'paste_favorites',
|
||||||
|
db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True),
|
||||||
|
db.Column('paste_id', db.Integer, db.ForeignKey('paste.id'), primary_key=True)
|
||||||
|
)
|
||||||
|
class User(db.Model, UserMixin):
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
username = db.Column(db.String(80), unique=True, nullable=False)
|
||||||
|
password_hash = db.Column(db.String(128), nullable=False)
|
||||||
|
role = db.Column(db.String(10), nullable=False, default='user')
|
||||||
|
storage_used = db.Column(db.BigInteger, nullable=False, default=0) # En bytes
|
||||||
|
storage_limit = db.Column(db.BigInteger, nullable=False, default=1 * 1024**3)
|
||||||
|
theme_preference = db.Column(db.String(10), default="light") # Guardar "light" o "dark"
|
||||||
|
def set_password(self, password):
|
||||||
|
self.password_hash = generate_password_hash(password)
|
||||||
|
|
||||||
|
def check_password(self, password):
|
||||||
|
return check_password_hash(self.password_hash, password)
|
||||||
|
|
||||||
|
def has_unlimited_storage(self):
|
||||||
|
return self.storage_limit == -1
|
||||||
|
|
||||||
|
def get_storage_limit(self):
|
||||||
|
"""Devuelve el límite de almacenamiento del usuario."""
|
||||||
|
return self.storage_limit
|
||||||
|
|
||||||
|
shared_pastes = db.Table(
|
||||||
|
'shared_pastes',
|
||||||
|
db.Column('paste_id', db.Integer, db.ForeignKey('paste.id'), primary_key=True),
|
||||||
|
db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True),
|
||||||
|
db.Column('can_edit', db.Boolean, default=False) # Nuevo campo para indicar permiso de edición
|
||||||
|
)
|
||||||
|
|
||||||
|
# Tabla intermedia para usuarios con permisos de edición
|
||||||
|
paste_editors = db.Table(
|
||||||
|
'paste_editors',
|
||||||
|
db.Column('paste_id', db.Integer, db.ForeignKey('paste.id'), primary_key=True),
|
||||||
|
db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True)
|
||||||
|
)
|
||||||
|
|
||||||
|
class Paste(db.Model):
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
title = db.Column(db.String(255), nullable=True)
|
||||||
|
editable = db.Column(db.Boolean, default=True)
|
||||||
|
content_type = db.Column(db.String(50), nullable=False)
|
||||||
|
filename = db.Column(db.String(255), nullable=True)
|
||||||
|
owner_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
|
||||||
|
created_at = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
|
||||||
|
expires_at = db.Column(db.DateTime, nullable=True) # Nuevo campo de expiración
|
||||||
|
language = db.Column(db.String(50), nullable=True)
|
||||||
|
last_edited_at = db.Column(db.DateTime, nullable=True)
|
||||||
|
user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
|
||||||
|
size = db.Column(db.Integer, nullable=True)
|
||||||
|
private = db.Column(db.Boolean, default=False)
|
||||||
|
|
||||||
|
# Relaciones
|
||||||
|
editors = db.relationship('User', secondary=paste_editors, backref=db.backref('editable_pastes', lazy='dynamic'))
|
||||||
|
owner = db.relationship('User', backref=db.backref('owned_pastes', lazy=True), foreign_keys=[owner_id])
|
||||||
|
favorites = db.relationship('User', secondary='paste_favorites', backref=db.backref('favorite_pastes', lazy='dynamic'))
|
||||||
|
shared_with = db.relationship('User', secondary=shared_pastes, backref=db.backref('shared_pastes', lazy='dynamic'))
|
||||||
|
|
||||||
|
owner = db.relationship(
|
||||||
|
'User',
|
||||||
|
backref=db.backref('owned_pastes', lazy=True),
|
||||||
|
foreign_keys=[owner_id]
|
||||||
|
)
|
||||||
|
favorites = db.relationship(
|
||||||
|
'User',
|
||||||
|
secondary='paste_favorites',
|
||||||
|
backref=db.backref('favorite_pastes', lazy='dynamic')
|
||||||
|
)
|
||||||
|
def is_expired(self):
|
||||||
|
""" Verifica si el paste ha expirado. """
|
||||||
|
return self.expires_at and datetime.utcnow() > self.expires_at
|
||||||
|
def to_dict(self):
|
||||||
|
return {
|
||||||
|
"id": self.id,
|
||||||
|
"content_type": self.content_type,
|
||||||
|
"filename": self.filename,
|
||||||
|
"owner_id": self.owner_id,
|
||||||
|
"created_at": self.created_at.isoformat(),
|
||||||
|
"language": self.language,
|
||||||
|
"user_id": self.user_id,
|
||||||
|
"size": self.file_size
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def get_size(self):
|
||||||
|
file_path = os.path.join(UPLOAD_FOLDER, self.filename)
|
||||||
|
try:
|
||||||
|
return os.path.getsize(file_path) # Devuelve el tamaño del archivo
|
||||||
|
except FileNotFoundError:
|
||||||
|
return 0
|
||||||
|
|
||||||
|
def get_type(self):
|
||||||
|
# Determinar el tipo de archivo basado en content_type
|
||||||
|
if self.content_type.startswith("video"):
|
||||||
|
return "Video"
|
||||||
|
elif self.content_type.startswith("audio"):
|
||||||
|
return "Audio"
|
||||||
|
elif self.content_type.startswith("image"):
|
||||||
|
return "Image"
|
||||||
|
elif self.content_type in [
|
||||||
|
"application/zip", "application/x-tar", "application/gzip",
|
||||||
|
"application/x-bzip2", "application/x-7z-compressed", "application/x-rar-compressed"
|
||||||
|
]:
|
||||||
|
return "Compressed"
|
||||||
|
elif self.content_type == "application/pdf":
|
||||||
|
return "PDF"
|
||||||
|
elif self.content_type.startswith("text"):
|
||||||
|
if self.language:
|
||||||
|
return f"Text ({self.language})"
|
||||||
|
return "Text"
|
||||||
|
else:
|
||||||
|
return "Other"
|
||||||
|
|
||||||
|
def get_extension(self):
|
||||||
|
from src.constants import LANGUAGE_TO_EXTENSION
|
||||||
|
|
||||||
|
# 1. Si filename tiene extensión, úsala
|
||||||
|
if self.filename and '.' in self.filename:
|
||||||
|
ext = self.filename.rsplit('.', 1)[-1].lower()
|
||||||
|
if len(ext) <= 5: # filtra hashes falsos
|
||||||
|
return ext
|
||||||
|
|
||||||
|
# 2. Si hay lenguaje conocido
|
||||||
|
if self.language:
|
||||||
|
ext = LANGUAGE_TO_EXTENSION.get(self.language.lower())
|
||||||
|
if ext:
|
||||||
|
return ext
|
||||||
|
|
||||||
|
# 3. Si se puede deducir por content_type
|
||||||
|
if self.content_type:
|
||||||
|
if self.content_type == "application/pdf":
|
||||||
|
return "pdf"
|
||||||
|
elif self.content_type in ["application/zip", "application/x-zip-compressed"]:
|
||||||
|
return "zip"
|
||||||
|
elif self.content_type.startswith("image/"):
|
||||||
|
return self.content_type.split("/")[-1].split('+')[0]
|
||||||
|
elif self.content_type.startswith("audio/"):
|
||||||
|
return self.content_type.split("/")[-1].split('+')[0]
|
||||||
|
elif self.content_type.startswith("video/"):
|
||||||
|
return self.content_type.split("/")[-1].split('+')[0]
|
||||||
|
elif self.content_type.startswith("text/"):
|
||||||
|
return "txt"
|
||||||
|
|
||||||
|
return "bin"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def has_edit_permission(self, user):
|
||||||
|
"""
|
||||||
|
Verifica si un usuario tiene permiso de edición en este paste.
|
||||||
|
"""
|
||||||
|
# Si el usuario no está autenticado, no puede tener permisos
|
||||||
|
if not user.is_authenticated:
|
||||||
|
print(f"[DEBUG] Unauthenticated user tried to edit paste {self.id}. Permission denied.")
|
||||||
|
return False
|
||||||
|
|
||||||
|
# El dueño del paste siempre tiene permisos
|
||||||
|
if user.id == self.owner_id:
|
||||||
|
print(f"[DEBUG] User {user.id} is the owner of paste {self.id}. Permission granted.")
|
||||||
|
return True
|
||||||
|
|
||||||
|
# Verificar si el usuario tiene permisos en `shared_pastes`
|
||||||
|
shared_entry = db.session.query(shared_pastes).filter_by(
|
||||||
|
paste_id=self.id,
|
||||||
|
user_id=user.id,
|
||||||
|
can_edit=True
|
||||||
|
).first()
|
||||||
|
|
||||||
|
if shared_entry:
|
||||||
|
print(f"[DEBUG] User {user.id} has edit permissions for paste {self.id}.")
|
||||||
|
else:
|
||||||
|
print(f"[DEBUG] User {user.id} does NOT have edit permissions for paste {self.id}.")
|
||||||
|
|
||||||
|
return shared_entry is not None
|
||||||
|
|
||||||
|
def can_view(self, user):
|
||||||
|
"""
|
||||||
|
Determina si un usuario puede ver el paste.
|
||||||
|
"""
|
||||||
|
if not self.private:
|
||||||
|
return True # Si no es privado, cualquiera puede verlo
|
||||||
|
|
||||||
|
if user and user.is_authenticated:
|
||||||
|
if user.id == self.owner_id or user in self.shared_with:
|
||||||
|
return True # Si el usuario es el dueño o está en la lista de compartidos, puede verlo
|
||||||
|
|
||||||
|
return False # No es dueño ni compartido, acceso denegado
|
156
src/models.py_backup
Normal file
156
src/models.py_backup
Normal file
@ -0,0 +1,156 @@
|
|||||||
|
from flask_sqlalchemy import SQLAlchemy
|
||||||
|
from datetime import datetime
|
||||||
|
from werkzeug.security import generate_password_hash, check_password_hash
|
||||||
|
import os
|
||||||
|
from config import UPLOAD_FOLDER
|
||||||
|
from flask_login import UserMixin
|
||||||
|
|
||||||
|
db = SQLAlchemy()
|
||||||
|
|
||||||
|
class Favorite(db.Model):
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
|
||||||
|
paste_id = db.Column(db.Integer, db.ForeignKey('paste.id'), nullable=False)
|
||||||
|
created_at = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
|
||||||
|
|
||||||
|
user = db.relationship('User', backref=db.backref('favorites', lazy=True))
|
||||||
|
paste = db.relationship('Paste', backref=db.backref('favorited_by', lazy=True))
|
||||||
|
|
||||||
|
paste_favorites = db.Table(
|
||||||
|
'paste_favorites',
|
||||||
|
db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True),
|
||||||
|
db.Column('paste_id', db.Integer, db.ForeignKey('paste.id'), primary_key=True)
|
||||||
|
)
|
||||||
|
class User(db.Model, UserMixin):
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
username = db.Column(db.String(80), unique=True, nullable=False)
|
||||||
|
password_hash = db.Column(db.String(128), nullable=False)
|
||||||
|
role = db.Column(db.String(10), nullable=False, default='user')
|
||||||
|
storage_used = db.Column(db.BigInteger, nullable=False, default=0) # En bytes
|
||||||
|
storage_limit = db.Column(db.BigInteger, nullable=False, default=1 * 1024**3)
|
||||||
|
theme_preference = db.Column(db.String(10), default="light") # Guardar "light" o "dark"
|
||||||
|
def set_password(self, password):
|
||||||
|
self.password_hash = generate_password_hash(password)
|
||||||
|
|
||||||
|
def check_password(self, password):
|
||||||
|
return check_password_hash(self.password_hash, password)
|
||||||
|
|
||||||
|
def has_unlimited_storage(self):
|
||||||
|
return self.storage_limit == -1
|
||||||
|
|
||||||
|
def get_storage_limit(self):
|
||||||
|
"""Devuelve el límite de almacenamiento del usuario."""
|
||||||
|
return self.storage_limit
|
||||||
|
|
||||||
|
shared_pastes = db.Table(
|
||||||
|
'shared_pastes',
|
||||||
|
db.Column('paste_id', db.Integer, db.ForeignKey('paste.id'), primary_key=True),
|
||||||
|
db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True),
|
||||||
|
db.Column('can_edit', db.Boolean, default=False) # Nuevo campo para indicar permiso de edición
|
||||||
|
)
|
||||||
|
|
||||||
|
# Tabla intermedia para usuarios con permisos de edición
|
||||||
|
paste_editors = db.Table(
|
||||||
|
'paste_editors',
|
||||||
|
db.Column('paste_id', db.Integer, db.ForeignKey('paste.id'), primary_key=True),
|
||||||
|
db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True)
|
||||||
|
)
|
||||||
|
|
||||||
|
class Paste(db.Model):
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
title = db.Column(db.String(255), nullable=True)
|
||||||
|
editable = db.Column(db.Boolean, default=True)
|
||||||
|
content_type = db.Column(db.String(50), nullable=False)
|
||||||
|
filename = db.Column(db.String(255), nullable=True)
|
||||||
|
owner_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
|
||||||
|
created_at = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
|
||||||
|
expires_at = db.Column(db.DateTime, nullable=True) # Nuevo campo de expiración
|
||||||
|
language = db.Column(db.String(50), nullable=True)
|
||||||
|
last_edited_at = db.Column(db.DateTime, nullable=True)
|
||||||
|
user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
|
||||||
|
size = db.Column(db.Integer, nullable=True)
|
||||||
|
|
||||||
|
# Relaciones
|
||||||
|
editors = db.relationship('User', secondary=paste_editors, backref=db.backref('editable_pastes', lazy='dynamic'))
|
||||||
|
owner = db.relationship('User', backref=db.backref('owned_pastes', lazy=True), foreign_keys=[owner_id])
|
||||||
|
favorites = db.relationship('User', secondary='paste_favorites', backref=db.backref('favorite_pastes', lazy='dynamic'))
|
||||||
|
shared_with = db.relationship('User', secondary=shared_pastes, backref=db.backref('shared_pastes', lazy='dynamic'))
|
||||||
|
|
||||||
|
owner = db.relationship(
|
||||||
|
'User',
|
||||||
|
backref=db.backref('owned_pastes', lazy=True),
|
||||||
|
foreign_keys=[owner_id]
|
||||||
|
)
|
||||||
|
favorites = db.relationship(
|
||||||
|
'User',
|
||||||
|
secondary='paste_favorites',
|
||||||
|
backref=db.backref('favorite_pastes', lazy='dynamic')
|
||||||
|
)
|
||||||
|
def is_expired(self):
|
||||||
|
""" Verifica si el paste ha expirado. """
|
||||||
|
return self.expires_at and datetime.utcnow() > self.expires_at
|
||||||
|
def to_dict(self):
|
||||||
|
return {
|
||||||
|
"id": self.id,
|
||||||
|
"content_type": self.content_type,
|
||||||
|
"filename": self.filename,
|
||||||
|
"owner_id": self.owner_id,
|
||||||
|
"created_at": self.created_at.isoformat(),
|
||||||
|
"language": self.language,
|
||||||
|
"user_id": self.user_id,
|
||||||
|
"size": self.file_size
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def get_size(self):
|
||||||
|
file_path = os.path.join(UPLOAD_FOLDER, self.filename)
|
||||||
|
try:
|
||||||
|
return os.path.getsize(file_path) # Devuelve el tamaño del archivo
|
||||||
|
except FileNotFoundError:
|
||||||
|
return 0
|
||||||
|
|
||||||
|
def get_type(self):
|
||||||
|
# Determinar el tipo de archivo basado en content_type
|
||||||
|
if self.content_type.startswith("video"):
|
||||||
|
return "Video"
|
||||||
|
elif self.content_type.startswith("audio"):
|
||||||
|
return "Audio"
|
||||||
|
elif self.content_type.startswith("image"):
|
||||||
|
return "Image"
|
||||||
|
elif self.content_type in ["application/zip", "application/x-tar", "application/gzip", "application/x-bzip2", "application/x-7z-compressed", "application/x-rar-compressed"]:
|
||||||
|
return "Compressed"
|
||||||
|
elif self.content_type.startswith("text"):
|
||||||
|
if self.language:
|
||||||
|
return f"Text ({self.language})"
|
||||||
|
return "Text"
|
||||||
|
else:
|
||||||
|
return "Other"
|
||||||
|
|
||||||
|
def has_edit_permission(self, user):
|
||||||
|
"""
|
||||||
|
Verifica si un usuario tiene permiso de edición en este paste.
|
||||||
|
"""
|
||||||
|
# Si el usuario no está autenticado, no puede tener permisos
|
||||||
|
if not user.is_authenticated:
|
||||||
|
print(f"[DEBUG] Unauthenticated user tried to edit paste {self.id}. Permission denied.")
|
||||||
|
return False
|
||||||
|
|
||||||
|
# El dueño del paste siempre tiene permisos
|
||||||
|
if user.id == self.owner_id:
|
||||||
|
print(f"[DEBUG] User {user.id} is the owner of paste {self.id}. Permission granted.")
|
||||||
|
return True
|
||||||
|
|
||||||
|
# Verificar si el usuario tiene permisos en `shared_pastes`
|
||||||
|
shared_entry = db.session.query(shared_pastes).filter_by(
|
||||||
|
paste_id=self.id,
|
||||||
|
user_id=user.id,
|
||||||
|
can_edit=True
|
||||||
|
).first()
|
||||||
|
|
||||||
|
if shared_entry:
|
||||||
|
print(f"[DEBUG] User {user.id} has edit permissions for paste {self.id}.")
|
||||||
|
else:
|
||||||
|
print(f"[DEBUG] User {user.id} does NOT have edit permissions for paste {self.id}.")
|
||||||
|
|
||||||
|
return shared_entry is not None
|
||||||
|
|
3050
src/routes.py
Normal file
3050
src/routes.py
Normal file
File diff suppressed because it is too large
Load Diff
2586
src/routes.py_backup
Normal file
2586
src/routes.py_backup
Normal file
File diff suppressed because it is too large
Load Diff
2501
src/routes.py_test
Normal file
2501
src/routes.py_test
Normal file
File diff suppressed because it is too large
Load Diff
65
static/css/abap.css
Normal file
65
static/css/abap.css
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #888888; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #FF0000 } /* Error */
|
||||||
|
.highlight .k { color: #0000ff } /* Keyword */
|
||||||
|
.highlight .n { color: #000000 } /* Name */
|
||||||
|
.highlight .ch { color: #888888; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #888888; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #888888; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #888888; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #888888; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #888888; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .kc { color: #0000ff } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #0000ff } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #0000ff } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #0000ff } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #0000ff } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #0000ff } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #33aaff } /* Literal.Number */
|
||||||
|
.highlight .s { color: #55aa22 } /* Literal.String */
|
||||||
|
.highlight .na { color: #000000 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #000000 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #000000 } /* Name.Class */
|
||||||
|
.highlight .no { color: #000000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #000000 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #000000 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #000000 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #000000 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #000000 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #000000 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #000000 } /* Name.Other */
|
||||||
|
.highlight .py { color: #000000 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #000000 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #000000 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #0000ff } /* Operator.Word */
|
||||||
|
.highlight .mb { color: #33aaff } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #33aaff } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #33aaff } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #33aaff } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #33aaff } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #55aa22 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #55aa22 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #55aa22 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #55aa22 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #55aa22 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #55aa22 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #55aa22 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #55aa22 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #55aa22 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #55aa22 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #55aa22 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #55aa22 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #55aa22 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #000000 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #000000 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #000000 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #000000 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #000000 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #000000 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #33aaff } /* Literal.Number.Integer.Long */
|
49
static/css/algol.css
Normal file
49
static/css/algol.css
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #888888; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { font-weight: bold; text-decoration: underline } /* Keyword */
|
||||||
|
.highlight .ch { color: #888888; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #888888; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #888888; font-weight: bold } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #888888; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #888888; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #888888; font-weight: bold } /* Comment.Special */
|
||||||
|
.highlight .kc { font-weight: bold; text-decoration: underline } /* Keyword.Constant */
|
||||||
|
.highlight .kd { font-weight: bold; font-style: italic; text-decoration: underline } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { font-weight: bold; text-decoration: underline } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { font-weight: bold; text-decoration: underline } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { font-weight: bold; text-decoration: underline } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { font-weight: bold; text-decoration: underline } /* Keyword.Type */
|
||||||
|
.highlight .s { color: #666666; font-style: italic } /* Literal.String */
|
||||||
|
.highlight .nb { font-weight: bold; font-style: italic } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #666666; font-weight: bold; font-style: italic } /* Name.Class */
|
||||||
|
.highlight .no { color: #666666; font-weight: bold; font-style: italic } /* Name.Constant */
|
||||||
|
.highlight .nf { color: #666666; font-weight: bold; font-style: italic } /* Name.Function */
|
||||||
|
.highlight .nn { color: #666666; font-weight: bold; font-style: italic } /* Name.Namespace */
|
||||||
|
.highlight .nv { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable */
|
||||||
|
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .sa { color: #666666; font-style: italic } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #666666; font-style: italic } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #666666; font-style: italic } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #666666; font-style: italic } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #666666; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #666666; font-style: italic } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #666666; font-style: italic } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #666666; font-style: italic } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #666666; font-style: italic } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #666666; font-style: italic } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #666666; font-style: italic } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #666666; font-style: italic } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #666666; font-style: italic } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { font-weight: bold; font-style: italic } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #666666; font-weight: bold; font-style: italic } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Magic */
|
49
static/css/algol_nu.css
Normal file
49
static/css/algol_nu.css
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #888888; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { color: #888888; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #888888; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #888888; font-weight: bold } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #888888; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #888888; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #888888; font-weight: bold } /* Comment.Special */
|
||||||
|
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { font-weight: bold; font-style: italic } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .s { color: #666666; font-style: italic } /* Literal.String */
|
||||||
|
.highlight .nb { font-weight: bold; font-style: italic } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #666666; font-weight: bold; font-style: italic } /* Name.Class */
|
||||||
|
.highlight .no { color: #666666; font-weight: bold; font-style: italic } /* Name.Constant */
|
||||||
|
.highlight .nf { color: #666666; font-weight: bold; font-style: italic } /* Name.Function */
|
||||||
|
.highlight .nn { color: #666666; font-weight: bold; font-style: italic } /* Name.Namespace */
|
||||||
|
.highlight .nv { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable */
|
||||||
|
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .sa { color: #666666; font-style: italic } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #666666; font-style: italic } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #666666; font-style: italic } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #666666; font-style: italic } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #666666; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #666666; font-style: italic } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #666666; font-style: italic } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #666666; font-style: italic } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #666666; font-style: italic } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #666666; font-style: italic } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #666666; font-style: italic } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #666666; font-style: italic } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #666666; font-style: italic } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { font-weight: bold; font-style: italic } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #666666; font-weight: bold; font-style: italic } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #666666; font-weight: bold; font-style: italic } /* Name.Variable.Magic */
|
66
static/css/arduino.css
Normal file
66
static/css/arduino.css
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #95a5a6 } /* Comment */
|
||||||
|
.highlight .err { color: #a61717 } /* Error */
|
||||||
|
.highlight .k { color: #728E00 } /* Keyword */
|
||||||
|
.highlight .n { color: #434f54 } /* Name */
|
||||||
|
.highlight .o { color: #728E00 } /* Operator */
|
||||||
|
.highlight .ch { color: #95a5a6 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #95a5a6 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #728E00 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #95a5a6 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #95a5a6 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #95a5a6 } /* Comment.Special */
|
||||||
|
.highlight .kc { color: #00979D } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #728E00 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #728E00 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #00979D } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #00979D } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #00979D } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #8A7B52 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #7F8C8D } /* Literal.String */
|
||||||
|
.highlight .na { color: #434f54 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #728E00 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #434f54 } /* Name.Class */
|
||||||
|
.highlight .no { color: #434f54 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #434f54 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #434f54 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #434f54 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #D35400 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #434f54 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #434f54 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #728E00 } /* Name.Other */
|
||||||
|
.highlight .py { color: #434f54 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #434f54 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #434f54 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #728E00 } /* Operator.Word */
|
||||||
|
.highlight .mb { color: #8A7B52 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #8A7B52 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #8A7B52 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #8A7B52 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #8A7B52 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #7F8C8D } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #7F8C8D } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #7F8C8D } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #7F8C8D } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #7F8C8D } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #7F8C8D } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #7F8C8D } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #7F8C8D } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #7F8C8D } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #7F8C8D } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #7F8C8D } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #7F8C8D } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #7F8C8D } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #728E00 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #D35400 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #434f54 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #434f54 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #434f54 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #434f54 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #8A7B52 } /* Literal.Number.Integer.Long */
|
72
static/css/autumn.css
Normal file
72
static/css/autumn.css
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #aaaaaa; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #FF0000; background-color: #FFAAAA } /* Error */
|
||||||
|
.highlight .k { color: #0000aa } /* Keyword */
|
||||||
|
.highlight .ch { color: #aaaaaa; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #aaaaaa; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #4c8317 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #aaaaaa; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #aaaaaa; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #0000aa; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #aa0000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00aa00 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #0000aa } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #0000aa } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #0000aa } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #0000aa } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #0000aa } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #00aaaa } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #009999 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #aa5500 } /* Literal.String */
|
||||||
|
.highlight .na { color: #1e90ff } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #00aaaa } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #00aa00; text-decoration: underline } /* Name.Class */
|
||||||
|
.highlight .no { color: #aa0000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #888888 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #880000; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .nf { color: #00aa00 } /* Name.Function */
|
||||||
|
.highlight .nn { color: #00aaaa; text-decoration: underline } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #1e90ff; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #aa0000 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #0000aa } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #009999 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #009999 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #aa5500 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #aa5500 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #aa5500 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #aa5500 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #aa5500 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #aa5500 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #aa5500 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #aa5500 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #aa5500 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #aa5500 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #009999 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #aa5500 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #0000aa } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #00aaaa } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #00aa00 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #aa0000 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #aa0000 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #aa0000 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #aa0000 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
|
12
static/css/bootstrap.min.css
vendored
Normal file
12
static/css/bootstrap.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
static/css/bootstrap.min.css.map
Normal file
1
static/css/bootstrap.min.css.map
Normal file
File diff suppressed because one or more lines are too long
12
static/css/bootstraplight.min.css
vendored
Normal file
12
static/css/bootstraplight.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
58
static/css/borland.css
Normal file
58
static/css/borland.css
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #008800; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .k { color: #000080; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { color: #008800; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #008800; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #008080 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #008800; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #008800; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #008800; font-weight: bold } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #999999 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #000080; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #000080; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #000080; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #000080; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #000080; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #000080; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #0000FF } /* Literal.Number */
|
||||||
|
.highlight .s { color: #0000FF } /* Literal.String */
|
||||||
|
.highlight .na { color: #FF0000 } /* Name.Attribute */
|
||||||
|
.highlight .nt { color: #000080; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #0000FF } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #0000FF } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #0000FF } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #0000FF } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #0000FF } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #0000FF } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #0000FF } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #800080 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #0000FF } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #0000FF } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #0000FF } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #0000FF } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #0000FF } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #0000FF } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #0000FF } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #0000FF } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #0000FF } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #0000FF } /* Literal.String.Symbol */
|
||||||
|
.highlight .il { color: #0000FF } /* Literal.Number.Integer.Long */
|
45
static/css/bw.css
Normal file
45
static/css/bw.css
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cpf { font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gh { font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gp { font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .s { font-style: italic } /* Literal.String */
|
||||||
|
.highlight .nc { font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .ni { font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nn { font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .sa { font-style: italic } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { font-style: italic } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { font-style: italic } /* Literal.String.Char */
|
||||||
|
.highlight .dl { font-style: italic } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { font-style: italic } /* Literal.String.Double */
|
||||||
|
.highlight .se { font-weight: bold; font-style: italic } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { font-style: italic } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { font-weight: bold; font-style: italic } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { font-style: italic } /* Literal.String.Other */
|
||||||
|
.highlight .sr { font-style: italic } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { font-style: italic } /* Literal.String.Single */
|
||||||
|
.highlight .ss { font-style: italic } /* Literal.String.Symbol */
|
85
static/css/coffee.css
Normal file
85
static/css/coffee.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #4e4e4e; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #4e4e4e; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #8f9494; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #8f9494; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ddd0c0 }
|
||||||
|
.highlight { background: #262220; color: #ddd0c0 }
|
||||||
|
.highlight .c { color: #70757A } /* Comment */
|
||||||
|
.highlight .err { color: #af5f5f } /* Error */
|
||||||
|
.highlight .esc { color: #ddd0c0 } /* Escape */
|
||||||
|
.highlight .g { color: #ddd0c0 } /* Generic */
|
||||||
|
.highlight .k { color: #919191 } /* Keyword */
|
||||||
|
.highlight .l { color: #af875f } /* Literal */
|
||||||
|
.highlight .n { color: #ddd0c0 } /* Name */
|
||||||
|
.highlight .o { color: #878787 } /* Operator */
|
||||||
|
.highlight .x { color: #ddd0c0 } /* Other */
|
||||||
|
.highlight .p { color: #ddd0c0 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #8f9f9f } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #70757A } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #fdd0c0 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #c9b98f } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #70757A } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #af5f5f } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #bb6868 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #ddd0c0; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #ddd0c0 } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #af5f5f } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #ddd0c0 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #849155 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #ddd0c0 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #ddd0c0 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #ddd0c0; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #ddd0c0 } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #af5f5f } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #875f5f } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #875f5f } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #875f5f } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #919191 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #b46276 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #af875f } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #af875f } /* Literal.Date */
|
||||||
|
.highlight .m { color: #87afaf } /* Literal.Number */
|
||||||
|
.highlight .s { color: #c9b98f } /* Literal.String */
|
||||||
|
.highlight .na { color: #ddd0c0 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #ddd0c0 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #875f5f } /* Name.Class */
|
||||||
|
.highlight .no { color: #af8787 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #fdd0c0 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #ddd0c0 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #877575 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #fdd0c0 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #ddd0c0 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #ddd0c0 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #ddd0c0 } /* Name.Other */
|
||||||
|
.highlight .py { color: #dfaf87 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #87afaf } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #ddd0c0 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #878787 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #ddd0c0 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #ddd0c0 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #87afaf } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #87afaf } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #87afaf } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #87afaf } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #87afaf } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #dfaf87 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #c9b98f } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #c9b98f } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #c9b98f } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #878787 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #c9b98f } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #af5f5f } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #c9b98f } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #af5f5f } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #fdd0c0 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #af5f5f } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #c9b98f } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #af5f5f } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #87afaf } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #fdd0c0 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #ddd0c0 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #ddd0c0 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #ddd0c0 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #ddd0c0 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #87afaf } /* Literal.Number.Integer.Long */
|
75
static/css/colorful.css
Normal file
75
static/css/colorful.css
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #888888 } /* Comment */
|
||||||
|
.highlight .err { color: #FF0000; background-color: #FFAAAA } /* Error */
|
||||||
|
.highlight .k { color: #008800; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #333333 } /* Operator */
|
||||||
|
.highlight .ch { color: #888888 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #888888 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #557799 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #888888 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #888888 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #cc0000; font-weight: bold } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #003388; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #333399; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #6600EE; font-weight: bold } /* Literal.Number */
|
||||||
|
.highlight .s { background-color: #fff0f0 } /* Literal.String */
|
||||||
|
.highlight .na { color: #0000CC } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #007020 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #BB0066; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #003366; font-weight: bold } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #880000; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #FF0000; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #0066BB; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nl { color: #997700; font-weight: bold } /* Name.Label */
|
||||||
|
.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #007700 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #996633 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #000000; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #6600EE; font-weight: bold } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #6600EE; font-weight: bold } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #005588; font-weight: bold } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #4400EE; font-weight: bold } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { background-color: #fff0f0 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { background-color: #fff0f0 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #0044DD } /* Literal.String.Char */
|
||||||
|
.highlight .dl { background-color: #fff0f0 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #DD4422 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { background-color: #fff0f0 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #666666; font-weight: bold; background-color: #fff0f0 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { background-color: #fff0f0 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { background-color: #eeeeee } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #DD2200; background-color: #fff0f0 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #000000; background-color: #fff0ff } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { background-color: #fff0f0 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #AA6600 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #0066BB; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #336699 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #dd7700; font-weight: bold } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #3333BB } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #996633 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
|
75
static/css/default.css
Normal file
75
static/css/default.css
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #f8f8f8; }
|
||||||
|
.highlight .c { color: #3D7B7B; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { color: #008000; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #666666 } /* Operator */
|
||||||
|
.highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #9C6500 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #E40000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #008400 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #717171 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #008000 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #B00040 } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #666666 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #BA2121 } /* Literal.String */
|
||||||
|
.highlight .na { color: #687822 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #008000 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #880000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #AA22FF } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #0000FF } /* Name.Function */
|
||||||
|
.highlight .nl { color: #767600 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #19177C } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #666666 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #666666 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #BA2121 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #BA2121 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #008000 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #A45A77 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #19177C } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #0000FF } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #19177C } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #19177C } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #19177C } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #19177C } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
|
84
static/css/dracula.css
Normal file
84
static/css/dracula.css
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #f1fa8c; background-color: #44475a; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #f1fa8c; background-color: #44475a; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #50fa7b; background-color: #6272a4; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #50fa7b; background-color: #6272a4; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #44475a }
|
||||||
|
.highlight { background: #282a36; color: #f8f8f2 }
|
||||||
|
.highlight .c { color: #6272a4 } /* Comment */
|
||||||
|
.highlight .err { color: #f8f8f2 } /* Error */
|
||||||
|
.highlight .g { color: #f8f8f2 } /* Generic */
|
||||||
|
.highlight .k { color: #ff79c6 } /* Keyword */
|
||||||
|
.highlight .l { color: #f8f8f2 } /* Literal */
|
||||||
|
.highlight .n { color: #f8f8f2 } /* Name */
|
||||||
|
.highlight .o { color: #ff79c6 } /* Operator */
|
||||||
|
.highlight .x { color: #f8f8f2 } /* Other */
|
||||||
|
.highlight .p { color: #f8f8f2 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #6272a4 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #6272a4 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #ff79c6 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #6272a4 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #6272a4 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #6272a4 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #8b080b } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #f8f8f2; text-decoration: underline } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #f8f8f2; text-decoration: underline } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #f8f8f2 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #f8f8f2; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #f8f8f2; font-weight: bold } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #44475a } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #f8f8f2 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #f8f8f2 } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #f8f8f2; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #f8f8f2 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #ff79c6 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #8be9fd; font-style: italic } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #ff79c6 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #ff79c6 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #ff79c6 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #8be9fd } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #f8f8f2 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #ffb86c } /* Literal.Number */
|
||||||
|
.highlight .s { color: #bd93f9 } /* Literal.String */
|
||||||
|
.highlight .na { color: #50fa7b } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #8be9fd; font-style: italic } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #50fa7b } /* Name.Class */
|
||||||
|
.highlight .no { color: #f8f8f2 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #f8f8f2 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #f8f8f2 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #f8f8f2 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #50fa7b } /* Name.Function */
|
||||||
|
.highlight .nl { color: #8be9fd; font-style: italic } /* Name.Label */
|
||||||
|
.highlight .nn { color: #f8f8f2 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #f8f8f2 } /* Name.Other */
|
||||||
|
.highlight .py { color: #f8f8f2 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #ff79c6 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #8be9fd; font-style: italic } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #ff79c6 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #f8f8f2 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #f8f8f2 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #ffb86c } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #ffb86c } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #ffb86c } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #ffb86c } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #ffb86c } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #bd93f9 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #bd93f9 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #bd93f9 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #bd93f9 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #bd93f9 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #bd93f9 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #bd93f9 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #bd93f9 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #bd93f9 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #bd93f9 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #bd93f9 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #bd93f9 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #bd93f9 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #f8f8f2; font-style: italic } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #50fa7b } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #8be9fd; font-style: italic } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #8be9fd; font-style: italic } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #8be9fd; font-style: italic } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #8be9fd; font-style: italic } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #ffb86c } /* Literal.Number.Integer.Long */
|
75
static/css/emacs.css
Normal file
75
static/css/emacs.css
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #f8f8f8; }
|
||||||
|
.highlight .c { color: #008800; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { color: #AA22FF; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #666666 } /* Operator */
|
||||||
|
.highlight .ch { color: #008800; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #008800; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #008800 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #008800; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #008800; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #008800; font-weight: bold } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #AA22FF; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #AA22FF; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #AA22FF; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #AA22FF } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #AA22FF; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #00BB00; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #666666 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #BB4444 } /* Literal.String */
|
||||||
|
.highlight .na { color: #BB4444 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #AA22FF } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #0000FF } /* Name.Class */
|
||||||
|
.highlight .no { color: #880000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #AA22FF } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #00A000 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #A0A000 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #B8860B } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #666666 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #666666 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #BB4444 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #BB4444 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #BB4444 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #BB4444 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #BB4444; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #BB4444 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #BB4444 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #008000 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #BB6688 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #BB4444 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #B8860B } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #AA22FF } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #00A000 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #B8860B } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #B8860B } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #B8860B } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #B8860B } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
|
75
static/css/friendly.css
Normal file
75
static/css/friendly.css
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #f0f0f0; }
|
||||||
|
.highlight .c { color: #60a0b0; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { color: #007020; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #666666 } /* Operator */
|
||||||
|
.highlight .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #007020 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #007020 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #902000 } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #40a070 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #4070a0 } /* Literal.String */
|
||||||
|
.highlight .na { color: #4070a0 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #007020 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #60add5 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #007020 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #06287e } /* Name.Function */
|
||||||
|
.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */
|
||||||
|
.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #bb60d5 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #40a070 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #40a070 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #40a070 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #40a070 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #40a070 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #4070a0 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #4070a0 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #4070a0 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #c65d09 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #235388 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #4070a0 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #517918 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #06287e } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #40a070 } /* Literal.Number.Integer.Long */
|
75
static/css/friendly_grayscale.css
Normal file
75
static/css/friendly_grayscale.css
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #f0f0f0; }
|
||||||
|
.highlight .c { color: #959595; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #898989 } /* Error */
|
||||||
|
.highlight .k { color: #575757; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #666666 } /* Operator */
|
||||||
|
.highlight .ch { color: #959595; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #959595; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #575757 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #959595; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #959595; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #959595; background-color: #F4F4F4 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #545454 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #898989 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #373737; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #7D7D7D } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #7E7E7E; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #5A5A5A; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #6D6D6D } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #575757; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #575757; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #575757; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #575757 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #575757; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #4F4F4F } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #888888 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #717171 } /* Literal.String */
|
||||||
|
.highlight .na { color: #707070 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #575757 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #7E7E7E; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #A5A5A5 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #848484; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #575757 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #3F3F3F } /* Name.Function */
|
||||||
|
.highlight .nl { color: #363636; font-weight: bold } /* Name.Label */
|
||||||
|
.highlight .nn { color: #7E7E7E; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #3B3B3B; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #9A9A9A } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #575757; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #888888 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #888888 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #888888 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #888888 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #888888 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #717171 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #717171 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #717171 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #717171 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #717171; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #717171 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #717171; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #717171 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #9F9F9F; font-style: italic } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #7E7E7E } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #575757 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #717171 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #676767 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #575757 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #3F3F3F } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #9A9A9A } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #9A9A9A } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #9A9A9A } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #9A9A9A } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #888888 } /* Literal.Number.Integer.Long */
|
85
static/css/fruity.css
Normal file
85
static/css/fruity.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #333333 }
|
||||||
|
.highlight { background: #111111; color: #ffffff }
|
||||||
|
.highlight .c { color: #008800; font-style: italic; background-color: #0f140f } /* Comment */
|
||||||
|
.highlight .err { color: #ffffff } /* Error */
|
||||||
|
.highlight .esc { color: #ffffff } /* Escape */
|
||||||
|
.highlight .g { color: #ffffff } /* Generic */
|
||||||
|
.highlight .k { color: #fb660a; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .l { color: #ffffff } /* Literal */
|
||||||
|
.highlight .n { color: #ffffff } /* Name */
|
||||||
|
.highlight .o { color: #ffffff } /* Operator */
|
||||||
|
.highlight .x { color: #ffffff } /* Other */
|
||||||
|
.highlight .p { color: #ffffff } /* Punctuation */
|
||||||
|
.highlight .ch { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #ff0007; font-weight: bold; font-style: italic; background-color: #0f140f } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #ffffff } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #ffffff } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #ffffff } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #ffffff } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #ffffff } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #444444; background-color: #222222 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #ffffff } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #ffffff } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #ffffff; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #ffffff } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #fb660a; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #fb660a; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #fb660a; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #fb660a } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #fb660a; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #cdcaa9; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #ffffff } /* Literal.Date */
|
||||||
|
.highlight .m { color: #0086f7; font-weight: bold } /* Literal.Number */
|
||||||
|
.highlight .s { color: #0086d2 } /* Literal.String */
|
||||||
|
.highlight .na { color: #ff0086; font-weight: bold } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #ffffff } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #ffffff } /* Name.Class */
|
||||||
|
.highlight .no { color: #0086d2 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #ffffff } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #ffffff } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #ffffff } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #ff0086; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nl { color: #ffffff } /* Name.Label */
|
||||||
|
.highlight .nn { color: #ffffff } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #ffffff } /* Name.Other */
|
||||||
|
.highlight .py { color: #ffffff } /* Name.Property */
|
||||||
|
.highlight .nt { color: #fb660a; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #fb660a } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #ffffff } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #ffffff } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #888888 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #0086f7; font-weight: bold } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #0086f7; font-weight: bold } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #0086f7; font-weight: bold } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #0086f7; font-weight: bold } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #0086f7; font-weight: bold } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #0086d2 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #0086d2 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #0086d2 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #0086d2 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #0086d2 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #0086d2 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #0086d2 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #0086d2 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #0086d2 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #0086d2 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #0086d2 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #0086d2 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #0086d2 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #ffffff } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #ff0086; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #fb660a } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #fb660a } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #fb660a } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #fb660a } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #0086f7; font-weight: bold } /* Literal.Number.Integer.Long */
|
86
static/css/github-dark.css
Normal file
86
static/css/github-dark.css
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #6e7681; background-color: #0d1117; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #6e7681; background-color: #0d1117; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #e6edf3; background-color: #6e7681; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #e6edf3; background-color: #6e7681; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #6e7681 }
|
||||||
|
.highlight { background: #0d1117; color: #e6edf3 }
|
||||||
|
.highlight .c { color: #8b949e; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #f85149 } /* Error */
|
||||||
|
.highlight .esc { color: #e6edf3 } /* Escape */
|
||||||
|
.highlight .g { color: #e6edf3 } /* Generic */
|
||||||
|
.highlight .k { color: #ff7b72 } /* Keyword */
|
||||||
|
.highlight .l { color: #a5d6ff } /* Literal */
|
||||||
|
.highlight .n { color: #e6edf3 } /* Name */
|
||||||
|
.highlight .o { color: #ff7b72; font-weight: bold } /* Operator */
|
||||||
|
.highlight .x { color: #e6edf3 } /* Other */
|
||||||
|
.highlight .p { color: #e6edf3 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #8b949e; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #8b949e; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #8b949e; font-weight: bold; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #8b949e; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #8b949e; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #8b949e; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #ffa198; background-color: #490202 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #e6edf3; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #e6edf3; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #ffa198 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #79c0ff; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #56d364; background-color: #0f5323 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #8b949e } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #8b949e } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #e6edf3; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #79c0ff } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #ff7b72 } /* Generic.Traceback */
|
||||||
|
.highlight .g-Underline { color: #e6edf3; text-decoration: underline } /* Generic.Underline */
|
||||||
|
.highlight .kc { color: #79c0ff } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #ff7b72 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #ff7b72 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #79c0ff } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #ff7b72 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #ff7b72 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #79c0ff } /* Literal.Date */
|
||||||
|
.highlight .m { color: #a5d6ff } /* Literal.Number */
|
||||||
|
.highlight .s { color: #a5d6ff } /* Literal.String */
|
||||||
|
.highlight .na { color: #e6edf3 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #e6edf3 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #f0883e; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #79c0ff; font-weight: bold } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #d2a8ff; font-weight: bold } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #ffa657 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #f0883e; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #d2a8ff; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nl { color: #79c0ff; font-weight: bold } /* Name.Label */
|
||||||
|
.highlight .nn { color: #ff7b72 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #e6edf3 } /* Name.Other */
|
||||||
|
.highlight .py { color: #79c0ff } /* Name.Property */
|
||||||
|
.highlight .nt { color: #7ee787 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #79c0ff } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #ff7b72; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #e6edf3 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #6e7681 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #a5d6ff } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #a5d6ff } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #a5d6ff } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #a5d6ff } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #a5d6ff } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #79c0ff } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #a5d6ff } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #a5d6ff } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #79c0ff } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #a5d6ff } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #a5d6ff } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #79c0ff } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #79c0ff } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #a5d6ff } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #a5d6ff } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #79c0ff } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #a5d6ff } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #a5d6ff } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #e6edf3 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #d2a8ff; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #79c0ff } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #79c0ff } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #79c0ff } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #79c0ff } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #a5d6ff } /* Literal.Number.Integer.Long */
|
86
static/css/gruvbox-dark.css
Normal file
86
static/css/gruvbox-dark.css
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ebdbb2 }
|
||||||
|
.highlight { background: #282828; color: #dddddd }
|
||||||
|
.highlight .c { color: #928374; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #282828; background-color: #fb4934 } /* Error */
|
||||||
|
.highlight .esc { color: #dddddd } /* Escape */
|
||||||
|
.highlight .g { color: #dddddd } /* Generic */
|
||||||
|
.highlight .k { color: #fb4934 } /* Keyword */
|
||||||
|
.highlight .l { color: #dddddd } /* Literal */
|
||||||
|
.highlight .n { color: #dddddd } /* Name */
|
||||||
|
.highlight .o { color: #dddddd } /* Operator */
|
||||||
|
.highlight .x { color: #dddddd } /* Other */
|
||||||
|
.highlight .p { color: #dddddd } /* Punctuation */
|
||||||
|
.highlight .ch { color: #928374; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #928374; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .c-PreProc { color: #8ec07c; font-style: italic } /* Comment.PreProc */
|
||||||
|
.highlight .cp { color: #928374; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #928374; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #928374; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #ebdbb2; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #282828; background-color: #fb4934 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #dddddd; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #dddddd; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #fb4934 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #ebdbb2; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #282828; background-color: #b8bb26 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #f2e5bc } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #a89984 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #dddddd; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #ebdbb2; text-decoration: underline } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #fb4934 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #fb4934 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #fb4934 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #fb4934 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #fb4934 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #fb4934 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #fb4934 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #dddddd } /* Literal.Date */
|
||||||
|
.highlight .m { color: #d3869b } /* Literal.Number */
|
||||||
|
.highlight .s { color: #b8bb26 } /* Literal.String */
|
||||||
|
.highlight .na { color: #fabd2f } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #fe8019 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #8ec07c } /* Name.Class */
|
||||||
|
.highlight .no { color: #d3869b } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #fb4934 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #dddddd } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #fb4934 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #8ec07c } /* Name.Function */
|
||||||
|
.highlight .nl { color: #dddddd } /* Name.Label */
|
||||||
|
.highlight .nn { color: #8ec07c } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #dddddd } /* Name.Other */
|
||||||
|
.highlight .py { color: #dddddd } /* Name.Property */
|
||||||
|
.highlight .nt { color: #8ec07c } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #83a598 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #fb4934 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #dddddd } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #dddddd } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #d3869b } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #d3869b } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #d3869b } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #d3869b } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #d3869b } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #b8bb26 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #b8bb26 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #b8bb26 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #b8bb26 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #b8bb26 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #b8bb26 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #fe8019 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #b8bb26 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #b8bb26 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #b8bb26 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #b8bb26 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #b8bb26 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #b8bb26 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #fe8019 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #8ec07c } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #83a598 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #83a598 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #83a598 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #83a598 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #d3869b } /* Literal.Number.Integer.Long */
|
71
static/css/gruvbox-light.css
Normal file
71
static/css/gruvbox-light.css
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #3c3836 }
|
||||||
|
.highlight { background: #fbf1c7; }
|
||||||
|
.highlight .c { color: #928374; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #fbf1c7; background-color: #9d0006 } /* Error */
|
||||||
|
.highlight .k { color: #9d0006 } /* Keyword */
|
||||||
|
.highlight .ch { color: #928374; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #928374; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .c-PreProc { color: #427b58; font-style: italic } /* Comment.PreProc */
|
||||||
|
.highlight .cp { color: #928374; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #928374; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #928374; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #3c3836; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #fbf1c7; background-color: #9d0006 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .gr { color: #9d0006 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #3c3836; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #fbf1c7; background-color: #79740e } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #32302f } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #7c6f64 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #3c3836; text-decoration: underline } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #9d0006 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #9d0006 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #9d0006 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #9d0006 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #9d0006 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #9d0006 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #9d0006 } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #8f3f71 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #79740e } /* Literal.String */
|
||||||
|
.highlight .na { color: #b57614 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #af3a03 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #427b58 } /* Name.Class */
|
||||||
|
.highlight .no { color: #8f3f71 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #9d0006 } /* Name.Decorator */
|
||||||
|
.highlight .ne { color: #9d0006 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #427b58 } /* Name.Function */
|
||||||
|
.highlight .nn { color: #427b58 } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #427b58 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #076678 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #9d0006 } /* Operator.Word */
|
||||||
|
.highlight .mb { color: #8f3f71 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #8f3f71 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #8f3f71 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #8f3f71 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #8f3f71 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #79740e } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #79740e } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #79740e } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #79740e } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #79740e } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #79740e } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #af3a03 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #79740e } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #79740e } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #79740e } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #79740e } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #79740e } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #79740e } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #af3a03 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #427b58 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #076678 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #076678 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #076678 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #076678 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #8f3f71 } /* Literal.Number.Integer.Long */
|
39
static/css/igor.css
Normal file
39
static/css/igor.css
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #FF0000; font-style: italic } /* Comment */
|
||||||
|
.highlight .k { color: #0000FF } /* Keyword */
|
||||||
|
.highlight .ch { color: #FF0000; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #FF0000; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #FF0000; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #FF0000; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #FF0000; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #FF0000; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .kc { color: #0000FF } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #0000FF } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #0000FF } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #0000FF } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #0000FF } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #0000FF } /* Keyword.Type */
|
||||||
|
.highlight .s { color: #009C00 } /* Literal.String */
|
||||||
|
.highlight .nc { color: #007575 } /* Name.Class */
|
||||||
|
.highlight .nd { color: #CC00A3 } /* Name.Decorator */
|
||||||
|
.highlight .nf { color: #C34E00 } /* Name.Function */
|
||||||
|
.highlight .sa { color: #009C00 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #009C00 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #009C00 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #009C00 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #009C00 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #009C00 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #009C00 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #009C00 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #009C00 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #009C00 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #009C00 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #009C00 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #009C00 } /* Literal.String.Symbol */
|
||||||
|
.highlight .fm { color: #C34E00 } /* Name.Function.Magic */
|
81
static/css/inkpot.css
Normal file
81
static/css/inkpot.css
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #1e1e27; color: #cfbfad }
|
||||||
|
.highlight .c { color: #cd8b00 } /* Comment */
|
||||||
|
.highlight .err { color: #ffffff; background-color: #6e2e2e } /* Error */
|
||||||
|
.highlight .k { color: #808bed } /* Keyword */
|
||||||
|
.highlight .n { color: #cfbfad } /* Name */
|
||||||
|
.highlight .o { color: #666666 } /* Operator */
|
||||||
|
.highlight .x { color: #cfbfad } /* Other */
|
||||||
|
.highlight .p { color: #cfbfad } /* Punctuation */
|
||||||
|
.highlight .ch { color: #cd8b00 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #cd8b00 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #409090 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #ffcd8b; background-color: #404040 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #cd8b00 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #808bed } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #808bed } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #808bed } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #808bed } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #808bed } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #808bed } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #ff8bff } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #f0ad6d } /* Literal.Number */
|
||||||
|
.highlight .s { color: #ffcd8b; background-color: #404040 } /* Literal.String */
|
||||||
|
.highlight .na { color: #cfbfad } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #808bed } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #ff8bff } /* Name.Class */
|
||||||
|
.highlight .no { color: #409090 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #409090 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #cfbfad } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #ff0000 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #c080d0 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #808bed } /* Name.Label */
|
||||||
|
.highlight .nn { color: #ff0000 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #cfbfad } /* Name.Other */
|
||||||
|
.highlight .py { color: #cfbfad } /* Name.Property */
|
||||||
|
.highlight .nt { color: #cfbfad } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #cfbfad } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #666666 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #cfbfad } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #434357 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #f0ad6d } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #f0ad6d } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #f0ad6d } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #f0ad6d } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #f0ad6d } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #ffcd8b; background-color: #404040 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #ffcd8b; background-color: #404040 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #ffcd8b; background-color: #404040 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #ffcd8b; background-color: #404040 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #808bed; background-color: #404040 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #ffcd8b; background-color: #404040 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #ffcd8b; background-color: #404040 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #ffcd8b; background-color: #404040 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #ffcd8b; background-color: #404040 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #ffcd8b; background-color: #404040 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #ffcd8b; background-color: #404040 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #ffcd8b; background-color: #404040 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #ffcd8b; background-color: #404040 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #ffff00 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #c080d0 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #cfbfad } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #cfbfad } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #cfbfad } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #cfbfad } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #f0ad6d } /* Literal.Number.Integer.Long */
|
85
static/css/lightbulb.css
Normal file
85
static/css/lightbulb.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #3c4354; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #3c4354; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #3c4354; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #3c4354; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #6e7681 }
|
||||||
|
.highlight { background: #1d2331; color: #d4d2c8 }
|
||||||
|
.highlight .c { color: #7e8aa1 } /* Comment */
|
||||||
|
.highlight .err { color: #f88f7f } /* Error */
|
||||||
|
.highlight .esc { color: #d4d2c8 } /* Escape */
|
||||||
|
.highlight .g { color: #d4d2c8 } /* Generic */
|
||||||
|
.highlight .k { color: #FFAD66 } /* Keyword */
|
||||||
|
.highlight .l { color: #D5FF80 } /* Literal */
|
||||||
|
.highlight .n { color: #d4d2c8 } /* Name */
|
||||||
|
.highlight .o { color: #FFAD66 } /* Operator */
|
||||||
|
.highlight .x { color: #d4d2c8 } /* Other */
|
||||||
|
.highlight .p { color: #d4d2c8 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #f88f7f; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #7e8aa1 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #FFAD66; font-weight: bold } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #7e8aa1 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #7e8aa1 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #7e8aa1; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #f88f7f; background-color: #3d1e20 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #d4d2c8; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #d4d2c8 } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #f88f7f } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #d4d2c8 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #6ad4af; background-color: #19362c } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #7e8aa1 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #d4d2c8 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #d4d2c8; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #d4d2c8 } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #f88f7f } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #FFAD66 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #FFAD66 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #FFAD66 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #FFAD66 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #FFAD66 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #73D0FF } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #D5FF80 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #DFBFFF } /* Literal.Number */
|
||||||
|
.highlight .s { color: #D5FF80 } /* Literal.String */
|
||||||
|
.highlight .na { color: #FFD173 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #FFD173 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #73D0FF } /* Name.Class */
|
||||||
|
.highlight .no { color: #FFD173 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #7e8aa1; font-weight: bold; font-style: italic } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #95E6CB } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #73D0FF } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #FFD173 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #d4d2c8 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #d4d2c8 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #d4d2c8 } /* Name.Other */
|
||||||
|
.highlight .py { color: #FFD173 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #5CCFE6 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #d4d2c8 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #FFAD66 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #d4d2c8 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #d4d2c8 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #DFBFFF } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #DFBFFF } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #DFBFFF } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #DFBFFF } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #DFBFFF } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #F29E74 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #D5FF80 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #D5FF80 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #D5FF80 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #7e8aa1 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #D5FF80 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #95E6CB } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #D5FF80 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #95E6CB } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #95E6CB } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #95E6CB } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #D5FF80 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #DFBFFF } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #5CCFE6 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #FFD173 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #d4d2c8 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #d4d2c8 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #d4d2c8 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #d4d2c8 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #DFBFFF } /* Literal.Number.Integer.Long */
|
61
static/css/lilypond.css
Normal file
61
static/css/lilypond.css
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .-ChordModifier { color: #976806 } /* ChordModifier */
|
||||||
|
.highlight .c { color: #A3AAB2; font-style: italic } /* Comment */
|
||||||
|
.highlight .k { font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { color: #A3AAB2; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #A3AAB2; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #A3AAB2; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #A3AAB2; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #A3AAB2; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #A3AAB2; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #976806 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #AB0909 } /* Literal.String */
|
||||||
|
.highlight .n-BackslashReference { color: #08547A } /* Name.BackslashReference */
|
||||||
|
.highlight .n-Lvalue { color: #08547A } /* Name.Lvalue */
|
||||||
|
.highlight .mb { color: #976806 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #976806 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #976806 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #976806 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #976806 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #AB0909 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #AB0909 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #AB0909 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #AB0909 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #AB0909 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #AB0909 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #C46C6C } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #AB0909 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #AB0909 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #AB0909 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #AB0909 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #AB0909 } /* Literal.String.Single */
|
||||||
|
.highlight .nb-Articulation { color: #68175A } /* Name.Builtin.Articulation */
|
||||||
|
.highlight .nb-Clef { color: #08547A; font-weight: bold } /* Name.Builtin.Clef */
|
||||||
|
.highlight .nb-Context { color: #038B8B; font-weight: bold } /* Name.Builtin.Context */
|
||||||
|
.highlight .nb-ContextProperty { color: #038B8B } /* Name.Builtin.ContextProperty */
|
||||||
|
.highlight .nb-Dynamic { color: #68175A } /* Name.Builtin.Dynamic */
|
||||||
|
.highlight .nb-Grob { color: #0C7441; font-weight: bold } /* Name.Builtin.Grob */
|
||||||
|
.highlight .nb-GrobProperty { color: #0C7441 } /* Name.Builtin.GrobProperty */
|
||||||
|
.highlight .nb-HeaderVariable { color: #6C5A05; font-weight: bold } /* Name.Builtin.HeaderVariable */
|
||||||
|
.highlight .nb-MarkupCommand { color: #831E71; font-weight: bold } /* Name.Builtin.MarkupCommand */
|
||||||
|
.highlight .nb-MusicCommand { color: #08547A; font-weight: bold } /* Name.Builtin.MusicCommand */
|
||||||
|
.highlight .nb-MusicFunction { color: #08547A; font-weight: bold } /* Name.Builtin.MusicFunction */
|
||||||
|
.highlight .nb-PaperVariable { color: #6C5A05; font-weight: bold } /* Name.Builtin.PaperVariable */
|
||||||
|
.highlight .nb-RepeatType { color: #08547A } /* Name.Builtin.RepeatType */
|
||||||
|
.highlight .nb-Scale { color: #08547A; font-weight: bold } /* Name.Builtin.Scale */
|
||||||
|
.highlight .nb-SchemeBuiltin { font-weight: bold } /* Name.Builtin.SchemeBuiltin */
|
||||||
|
.highlight .nb-SchemeFunction { color: #A83401; font-weight: bold } /* Name.Builtin.SchemeFunction */
|
||||||
|
.highlight .nb-Translator { color: #6200A4; font-weight: bold } /* Name.Builtin.Translator */
|
||||||
|
.highlight .il { color: #976806 } /* Literal.Number.Integer.Long */
|
77
static/css/lovelace.css
Normal file
77
static/css/lovelace.css
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #888888; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { background-color: #a848a8 } /* Error */
|
||||||
|
.highlight .k { color: #2838b0 } /* Keyword */
|
||||||
|
.highlight .o { color: #666666 } /* Operator */
|
||||||
|
.highlight .p { color: #888888 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #287088; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #888888; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #289870 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #888888; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #888888; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #888888; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #c02828 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #c02828 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #666666 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #388038 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #666666 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #444444 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #444444 } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #2838b0 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #444444; font-style: italic } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #2838b0; font-style: italic } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #2838b0 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #2838b0 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #2838b0 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #2838b0; font-style: italic } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #444444 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #b83838 } /* Literal.String */
|
||||||
|
.highlight .na { color: #388038 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #388038 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #287088 } /* Name.Class */
|
||||||
|
.highlight .no { color: #b85820 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #287088 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #709030 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #908828 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #785840 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #289870 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #289870 } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #2838b0 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #b04040 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #a848a8 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #888888 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #a89028 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #444444 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #444444 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #444444 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #444444 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #444444 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #444444 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #b83838 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #a848a8 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #b85820 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #b85820; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #b83838 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #709030 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #b83838 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #b83838; text-decoration: underline } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #a848a8 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #a848a8 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #b83838 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #b83838 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #388038; font-style: italic } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #b85820 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #b04040 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #908828 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #b04040 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #b85820 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #444444 } /* Literal.Number.Integer.Long */
|
75
static/css/manni.css
Normal file
75
static/css/manni.css
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #f0f3f3; }
|
||||||
|
.highlight .c { color: #0099FF; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #AA0000; background-color: #FFAAAA } /* Error */
|
||||||
|
.highlight .k { color: #006699; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #555555 } /* Operator */
|
||||||
|
.highlight .ch { color: #0099FF; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #0099FF; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #009999 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #0099FF; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #0099FF; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #0099FF; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { background-color: #FFCCCC; border: 1px solid #CC0000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #003300; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { background-color: #CCFFCC; border: 1px solid #00CC00 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #AAAAAA } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #000099; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #003300; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #99CC66 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #006699; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #006699; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #006699; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #006699 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #006699; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #007788; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #FF6600 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #CC3300 } /* Literal.String */
|
||||||
|
.highlight .na { color: #330099 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #336666 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #00AA88; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #336600 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #9999FF } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #CC0000; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #CC00FF } /* Name.Function */
|
||||||
|
.highlight .nl { color: #9999FF } /* Name.Label */
|
||||||
|
.highlight .nn { color: #00CCFF; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #330099; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #003333 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #000000; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #FF6600 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #FF6600 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #FF6600 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #FF6600 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #FF6600 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #CC3300 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #CC3300 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #CC3300 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #CC3300 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #CC3300; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #CC3300 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #CC3300; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #CC3300 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #AA0000 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #CC3300 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #33AAAA } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #CC3300 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #FFCC33 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #336666 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #CC00FF } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #003333 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #003333 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #003333 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #003333 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #FF6600 } /* Literal.Number.Integer.Long */
|
84
static/css/material.css
Normal file
84
static/css/material.css
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #37474F; background-color: #263238; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #37474F; background-color: #263238; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #607A86; background-color: #263238; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #607A86; background-color: #263238; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #2C3B41 }
|
||||||
|
.highlight { background: #263238; color: #EEFFFF }
|
||||||
|
.highlight .c { color: #546E7A; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #FF5370 } /* Error */
|
||||||
|
.highlight .esc { color: #89DDFF } /* Escape */
|
||||||
|
.highlight .g { color: #EEFFFF } /* Generic */
|
||||||
|
.highlight .k { color: #BB80B3 } /* Keyword */
|
||||||
|
.highlight .l { color: #C3E88D } /* Literal */
|
||||||
|
.highlight .n { color: #EEFFFF } /* Name */
|
||||||
|
.highlight .o { color: #89DDFF } /* Operator */
|
||||||
|
.highlight .p { color: #89DDFF } /* Punctuation */
|
||||||
|
.highlight .ch { color: #546E7A; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #546E7A; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #546E7A; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #546E7A; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #546E7A; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #546E7A; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #FF5370 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #89DDFF } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #FFCB6B } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF5370 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #C3E88D } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #C3E88D } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #546E7A } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #FFCB6B } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #FF5370 } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #89DDFF } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #FF5370 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #89DDFF } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #BB80B3 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #89DDFF; font-style: italic } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #89DDFF } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #BB80B3 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #BB80B3 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #C3E88D } /* Literal.Date */
|
||||||
|
.highlight .m { color: #F78C6C } /* Literal.Number */
|
||||||
|
.highlight .s { color: #C3E88D } /* Literal.String */
|
||||||
|
.highlight .na { color: #BB80B3 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #82AAFF } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #FFCB6B } /* Name.Class */
|
||||||
|
.highlight .no { color: #EEFFFF } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #82AAFF } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #89DDFF } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #FFCB6B } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #82AAFF } /* Name.Function */
|
||||||
|
.highlight .nl { color: #82AAFF } /* Name.Label */
|
||||||
|
.highlight .nn { color: #FFCB6B } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #EEFFFF } /* Name.Other */
|
||||||
|
.highlight .py { color: #FFCB6B } /* Name.Property */
|
||||||
|
.highlight .nt { color: #FF5370 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #89DDFF } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #89DDFF; font-style: italic } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #89DDFF } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #EEFFFF } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #F78C6C } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #F78C6C } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #F78C6C } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #F78C6C } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #F78C6C } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #BB80B3 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #C3E88D } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #C3E88D } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #EEFFFF } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #546E7A; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #C3E88D } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #EEFFFF } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #C3E88D } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #89DDFF } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #C3E88D } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #89DDFF } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #C3E88D } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #89DDFF } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #89DDFF } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #82AAFF } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #89DDFF } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #89DDFF } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #89DDFF } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #82AAFF } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #F78C6C } /* Literal.Number.Integer.Long */
|
85
static/css/monokai.css
Normal file
85
static/css/monokai.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #49483e }
|
||||||
|
.highlight { background: #272822; color: #f8f8f2 }
|
||||||
|
.highlight .c { color: #959077 } /* Comment */
|
||||||
|
.highlight .err { color: #ed007e; background-color: #1e0010 } /* Error */
|
||||||
|
.highlight .esc { color: #f8f8f2 } /* Escape */
|
||||||
|
.highlight .g { color: #f8f8f2 } /* Generic */
|
||||||
|
.highlight .k { color: #66d9ef } /* Keyword */
|
||||||
|
.highlight .l { color: #ae81ff } /* Literal */
|
||||||
|
.highlight .n { color: #f8f8f2 } /* Name */
|
||||||
|
.highlight .o { color: #ff4689 } /* Operator */
|
||||||
|
.highlight .x { color: #f8f8f2 } /* Other */
|
||||||
|
.highlight .p { color: #f8f8f2 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #959077 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #959077 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #959077 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #959077 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #959077 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #959077 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #ff4689 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #f8f8f2; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #f8f8f2; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #f8f8f2 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #f8f8f2 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #a6e22e } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #66d9ef } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #ff4689; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #f8f8f2; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #959077 } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #f8f8f2 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #66d9ef } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #66d9ef } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #ff4689 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #66d9ef } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #66d9ef } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #66d9ef } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #e6db74 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #ae81ff } /* Literal.Number */
|
||||||
|
.highlight .s { color: #e6db74 } /* Literal.String */
|
||||||
|
.highlight .na { color: #a6e22e } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #f8f8f2 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #a6e22e } /* Name.Class */
|
||||||
|
.highlight .no { color: #66d9ef } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #a6e22e } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #f8f8f2 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #a6e22e } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #a6e22e } /* Name.Function */
|
||||||
|
.highlight .nl { color: #f8f8f2 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #f8f8f2 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #a6e22e } /* Name.Other */
|
||||||
|
.highlight .py { color: #f8f8f2 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #ff4689 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #f8f8f2 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #ff4689 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #f8f8f2 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #f8f8f2 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #ae81ff } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #ae81ff } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #ae81ff } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #ae81ff } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #ae81ff } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #e6db74 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #e6db74 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #e6db74 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #e6db74 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #e6db74 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #e6db74 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #ae81ff } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #e6db74 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #e6db74 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #e6db74 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #e6db74 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #e6db74 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #e6db74 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #a6e22e } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #f8f8f2 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #f8f8f2 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #f8f8f2 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #f8f8f2 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #ae81ff } /* Literal.Number.Integer.Long */
|
75
static/css/murphy.css
Normal file
75
static/css/murphy.css
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #666666; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #FF0000; background-color: #FFAAAA } /* Error */
|
||||||
|
.highlight .k { color: #228899; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #333333 } /* Operator */
|
||||||
|
.highlight .ch { color: #666666; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #666666; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #557799 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #666666; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #666666; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #cc0000; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #228899; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #228899; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #228899; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #0088ff; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #228899; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #6666ff; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #6600EE; font-weight: bold } /* Literal.Number */
|
||||||
|
.highlight .s { background-color: #e0e0ff } /* Literal.String */
|
||||||
|
.highlight .na { color: #000077 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #007722 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #ee99ee; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #55eedd; font-weight: bold } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #880000 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #FF0000; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #55eedd; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nl { color: #997700; font-weight: bold } /* Name.Label */
|
||||||
|
.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #007700 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #003366 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #000000; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #6600EE; font-weight: bold } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #6600EE; font-weight: bold } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #005588; font-weight: bold } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #6666ff; font-weight: bold } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #4400EE; font-weight: bold } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { background-color: #e0e0ff } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { background-color: #e0e0ff } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #8888FF } /* Literal.String.Char */
|
||||||
|
.highlight .dl { background-color: #e0e0ff } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #DD4422 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { background-color: #e0e0ff } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #666666; font-weight: bold; background-color: #e0e0ff } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { background-color: #e0e0ff } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { background-color: #eeeeee } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #ff8888; background-color: #e0e0ff } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #000000; background-color: #e0e0ff } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { background-color: #e0e0ff } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #ffcc88 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #007722 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #55eedd; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #ccccff } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #ff8844 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #aaaaff } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #003366 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #6666ff; font-weight: bold } /* Literal.Number.Integer.Long */
|
85
static/css/native.css
Normal file
85
static/css/native.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #404040 }
|
||||||
|
.highlight { background: #202020; color: #d0d0d0 }
|
||||||
|
.highlight .c { color: #ababab; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .esc { color: #d0d0d0 } /* Escape */
|
||||||
|
.highlight .g { color: #d0d0d0 } /* Generic */
|
||||||
|
.highlight .k { color: #6ebf26; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .l { color: #d0d0d0 } /* Literal */
|
||||||
|
.highlight .n { color: #d0d0d0 } /* Name */
|
||||||
|
.highlight .o { color: #d0d0d0 } /* Operator */
|
||||||
|
.highlight .x { color: #d0d0d0 } /* Other */
|
||||||
|
.highlight .p { color: #d0d0d0 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #ababab; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #ababab; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #ff3a3a; font-weight: bold } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #ababab; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #ababab; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #e50808; font-weight: bold; background-color: #520000 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #ff3a3a } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #d0d0d0; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #ff3a3a } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #589819 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #cccccc } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #aaaaaa } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #d0d0d0; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #ff3a3a } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #6ebf26; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #6ebf26; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #6ebf26; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #6ebf26 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #6ebf26; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #6ebf26; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #d0d0d0 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #51b2fd } /* Literal.Number */
|
||||||
|
.highlight .s { color: #ed9d13 } /* Literal.String */
|
||||||
|
.highlight .na { color: #bbbbbb } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #2fbccd } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #71adff; text-decoration: underline } /* Name.Class */
|
||||||
|
.highlight .no { color: #40ffff } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #ffa500 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #d0d0d0 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #bbbbbb } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #71adff } /* Name.Function */
|
||||||
|
.highlight .nl { color: #d0d0d0 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #71adff; text-decoration: underline } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #d0d0d0 } /* Name.Other */
|
||||||
|
.highlight .py { color: #d0d0d0 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #6ebf26; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #40ffff } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #6ebf26; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #d0d0d0 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #666666 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #51b2fd } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #51b2fd } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #51b2fd } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #51b2fd } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #51b2fd } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #ed9d13 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #ed9d13 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #ed9d13 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #ed9d13 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #ed9d13 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #ed9d13 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #ed9d13 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #ed9d13 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #ed9d13 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #ffa500 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #ed9d13 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #ed9d13 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #ed9d13 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #2fbccd } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #71adff } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #40ffff } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #40ffff } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #40ffff } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #40ffff } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #51b2fd } /* Literal.Number.Integer.Long */
|
85
static/css/nord-darker.css
Normal file
85
static/css/nord-darker.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #D8DEE9; background-color: #242933; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #D8DEE9; background-color: #242933; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #242933; background-color: #D8DEE9; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #242933; background-color: #D8DEE9; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #3B4252 }
|
||||||
|
.highlight { background: #242933; color: #d8dee9 }
|
||||||
|
.highlight .c { color: #616e87; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #bf616a } /* Error */
|
||||||
|
.highlight .esc { color: #d8dee9 } /* Escape */
|
||||||
|
.highlight .g { color: #d8dee9 } /* Generic */
|
||||||
|
.highlight .k { color: #81a1c1; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .l { color: #d8dee9 } /* Literal */
|
||||||
|
.highlight .n { color: #d8dee9 } /* Name */
|
||||||
|
.highlight .o { color: #81a1c1; font-weight: bold } /* Operator */
|
||||||
|
.highlight .x { color: #d8dee9 } /* Other */
|
||||||
|
.highlight .p { color: #eceff4 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #616e87; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #616e87; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #5e81ac; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #616e87; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #616e87; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #616e87; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #bf616a } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #d8dee9; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #d8dee9 } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #bf616a } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #88c0d0; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #a3be8c } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #d8dee9 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #616e88; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #d8dee9; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #88c0d0; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #bf616a } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #81a1c1; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #81a1c1; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #81a1c1; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #81a1c1 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #81a1c1; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #81a1c1 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #d8dee9 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #b48ead } /* Literal.Number */
|
||||||
|
.highlight .s { color: #a3be8c } /* Literal.String */
|
||||||
|
.highlight .na { color: #8fbcbb } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #81a1c1 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #8fbcbb } /* Name.Class */
|
||||||
|
.highlight .no { color: #8fbcbb } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #d08770 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #d08770 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #bf616a } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #88c0d0 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #d8dee9 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #8fbcbb } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #d8dee9 } /* Name.Other */
|
||||||
|
.highlight .py { color: #d8dee9 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #81a1c1 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #d8dee9 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #81a1c1; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #eceff4 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #d8dee9 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #b48ead } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #b48ead } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #b48ead } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #b48ead } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #b48ead } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #a3be8c } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #a3be8c } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #a3be8c } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #a3be8c } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #616e87 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #a3be8c } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #ebcb8b } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #a3be8c } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #a3be8c } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #a3be8c } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #ebcb8b } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #a3be8c } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #a3be8c } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #81a1c1 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #88c0d0 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #d8dee9 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #d8dee9 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #d8dee9 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #d8dee9 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #b48ead } /* Literal.Number.Integer.Long */
|
85
static/css/nord.css
Normal file
85
static/css/nord.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #D8DEE9; background-color: #242933; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #D8DEE9; background-color: #242933; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #242933; background-color: #D8DEE9; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #242933; background-color: #D8DEE9; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #3B4252 }
|
||||||
|
.highlight { background: #2E3440; color: #d8dee9 }
|
||||||
|
.highlight .c { color: #616e87; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #bf616a } /* Error */
|
||||||
|
.highlight .esc { color: #d8dee9 } /* Escape */
|
||||||
|
.highlight .g { color: #d8dee9 } /* Generic */
|
||||||
|
.highlight .k { color: #81a1c1; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .l { color: #d8dee9 } /* Literal */
|
||||||
|
.highlight .n { color: #d8dee9 } /* Name */
|
||||||
|
.highlight .o { color: #81a1c1; font-weight: bold } /* Operator */
|
||||||
|
.highlight .x { color: #d8dee9 } /* Other */
|
||||||
|
.highlight .p { color: #eceff4 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #616e87; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #616e87; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #5e81ac; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #616e87; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #616e87; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #616e87; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #bf616a } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #d8dee9; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #d8dee9; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #bf616a } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #88c0d0; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #a3be8c } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #d8dee9 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #616e88; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #d8dee9; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #88c0d0; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #bf616a } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #81a1c1; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #81a1c1; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #81a1c1; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #81a1c1 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #81a1c1; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #81a1c1 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #d8dee9 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #b48ead } /* Literal.Number */
|
||||||
|
.highlight .s { color: #a3be8c } /* Literal.String */
|
||||||
|
.highlight .na { color: #8fbcbb } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #81a1c1 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #8fbcbb } /* Name.Class */
|
||||||
|
.highlight .no { color: #8fbcbb } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #d08770 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #d08770 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #bf616a } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #88c0d0 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #d8dee9 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #8fbcbb } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #d8dee9 } /* Name.Other */
|
||||||
|
.highlight .py { color: #d8dee9 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #81a1c1 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #d8dee9 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #81a1c1; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #eceff4 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #d8dee9 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #b48ead } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #b48ead } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #b48ead } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #b48ead } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #b48ead } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #a3be8c } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #a3be8c } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #a3be8c } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #a3be8c } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #616e87 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #a3be8c } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #ebcb8b } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #a3be8c } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #a3be8c } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #a3be8c } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #ebcb8b } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #a3be8c } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #a3be8c } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #81a1c1 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #88c0d0 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #d8dee9 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #d8dee9 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #d8dee9 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #d8dee9 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #b48ead } /* Literal.Number.Integer.Long */
|
85
static/css/one-dark.css
Normal file
85
static/css/one-dark.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #282C34; color: #ABB2BF }
|
||||||
|
.highlight .c { color: #7F848E } /* Comment */
|
||||||
|
.highlight .err { color: #ABB2BF } /* Error */
|
||||||
|
.highlight .esc { color: #ABB2BF } /* Escape */
|
||||||
|
.highlight .g { color: #ABB2BF } /* Generic */
|
||||||
|
.highlight .k { color: #C678DD } /* Keyword */
|
||||||
|
.highlight .l { color: #ABB2BF } /* Literal */
|
||||||
|
.highlight .n { color: #E06C75 } /* Name */
|
||||||
|
.highlight .o { color: #56B6C2 } /* Operator */
|
||||||
|
.highlight .x { color: #ABB2BF } /* Other */
|
||||||
|
.highlight .p { color: #ABB2BF } /* Punctuation */
|
||||||
|
.highlight .ch { color: #7F848E } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #7F848E } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #7F848E } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #7F848E } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #7F848E } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #7F848E } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #ABB2BF } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #ABB2BF } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #ABB2BF } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #ABB2BF } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #ABB2BF } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #ABB2BF } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #ABB2BF } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #ABB2BF } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #ABB2BF } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #ABB2BF } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #ABB2BF } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #E5C07B } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #C678DD } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #C678DD } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #C678DD } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #C678DD } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #E5C07B } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #ABB2BF } /* Literal.Date */
|
||||||
|
.highlight .m { color: #D19A66 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #98C379 } /* Literal.String */
|
||||||
|
.highlight .na { color: #E06C75 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #E5C07B } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #E5C07B } /* Name.Class */
|
||||||
|
.highlight .no { color: #E06C75 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #61AFEF } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #E06C75 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #E06C75 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #61AFEF; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nl { color: #E06C75 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #E06C75 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #E06C75 } /* Name.Other */
|
||||||
|
.highlight .py { color: #E06C75 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #E06C75 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #E06C75 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #56B6C2 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #ABB2BF } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #ABB2BF } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #D19A66 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #D19A66 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #D19A66 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #D19A66 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #D19A66 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #98C379 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #98C379 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #98C379 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #98C379 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #98C379 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #98C379 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #98C379 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #98C379 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #98C379 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #98C379 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #98C379 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #98C379 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #98C379 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #E5C07B } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #56B6C2; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #E06C75 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #E06C75 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #E06C75 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #E06C75 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #D19A66 } /* Literal.Number.Integer.Long */
|
79
static/css/paraiso-dark.css
Normal file
79
static/css/paraiso-dark.css
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #4f424c }
|
||||||
|
.highlight { background: #2f1e2e; color: #e7e9db }
|
||||||
|
.highlight .c { color: #776e71 } /* Comment */
|
||||||
|
.highlight .err { color: #ef6155 } /* Error */
|
||||||
|
.highlight .k { color: #815ba4 } /* Keyword */
|
||||||
|
.highlight .l { color: #f99b15 } /* Literal */
|
||||||
|
.highlight .n { color: #e7e9db } /* Name */
|
||||||
|
.highlight .o { color: #5bc4bf } /* Operator */
|
||||||
|
.highlight .p { color: #e7e9db } /* Punctuation */
|
||||||
|
.highlight .ch { color: #776e71 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #776e71 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #776e71 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #776e71 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #776e71 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #776e71 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #ef6155 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gh { color: #e7e9db; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #48b685 } /* Generic.Inserted */
|
||||||
|
.highlight .gp { color: #776e71; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #5bc4bf; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .kc { color: #815ba4 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #815ba4 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #5bc4bf } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #815ba4 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #815ba4 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #fec418 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #48b685 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #f99b15 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #48b685 } /* Literal.String */
|
||||||
|
.highlight .na { color: #06b6ef } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #e7e9db } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #fec418 } /* Name.Class */
|
||||||
|
.highlight .no { color: #ef6155 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #5bc4bf } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #e7e9db } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #ef6155 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #06b6ef } /* Name.Function */
|
||||||
|
.highlight .nl { color: #e7e9db } /* Name.Label */
|
||||||
|
.highlight .nn { color: #fec418 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #06b6ef } /* Name.Other */
|
||||||
|
.highlight .py { color: #e7e9db } /* Name.Property */
|
||||||
|
.highlight .nt { color: #5bc4bf } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #ef6155 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #5bc4bf } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #e7e9db } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #e7e9db } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #f99b15 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #f99b15 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #f99b15 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #f99b15 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #f99b15 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #48b685 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #48b685 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #e7e9db } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #48b685 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #776e71 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #48b685 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #f99b15 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #48b685 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #f99b15 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #48b685 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #48b685 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #48b685 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #48b685 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #e7e9db } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #06b6ef } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #ef6155 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #ef6155 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #ef6155 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #ef6155 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #f99b15 } /* Literal.Number.Integer.Long */
|
79
static/css/paraiso-light.css
Normal file
79
static/css/paraiso-light.css
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #a39e9b }
|
||||||
|
.highlight { background: #e7e9db; color: #2f1e2e }
|
||||||
|
.highlight .c { color: #8d8687 } /* Comment */
|
||||||
|
.highlight .err { color: #ef6155 } /* Error */
|
||||||
|
.highlight .k { color: #815ba4 } /* Keyword */
|
||||||
|
.highlight .l { color: #f99b15 } /* Literal */
|
||||||
|
.highlight .n { color: #2f1e2e } /* Name */
|
||||||
|
.highlight .o { color: #5bc4bf } /* Operator */
|
||||||
|
.highlight .p { color: #2f1e2e } /* Punctuation */
|
||||||
|
.highlight .ch { color: #8d8687 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #8d8687 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #8d8687 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #8d8687 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #8d8687 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #8d8687 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #ef6155 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gh { color: #2f1e2e; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #48b685 } /* Generic.Inserted */
|
||||||
|
.highlight .gp { color: #8d8687; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #5bc4bf; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .kc { color: #815ba4 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #815ba4 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #5bc4bf } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #815ba4 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #815ba4 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #fec418 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #48b685 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #f99b15 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #48b685 } /* Literal.String */
|
||||||
|
.highlight .na { color: #06b6ef } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #2f1e2e } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #fec418 } /* Name.Class */
|
||||||
|
.highlight .no { color: #ef6155 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #5bc4bf } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #2f1e2e } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #ef6155 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #06b6ef } /* Name.Function */
|
||||||
|
.highlight .nl { color: #2f1e2e } /* Name.Label */
|
||||||
|
.highlight .nn { color: #fec418 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #06b6ef } /* Name.Other */
|
||||||
|
.highlight .py { color: #2f1e2e } /* Name.Property */
|
||||||
|
.highlight .nt { color: #5bc4bf } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #ef6155 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #5bc4bf } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #2f1e2e } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #2f1e2e } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #f99b15 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #f99b15 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #f99b15 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #f99b15 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #f99b15 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #48b685 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #48b685 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #2f1e2e } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #48b685 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #8d8687 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #48b685 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #f99b15 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #48b685 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #f99b15 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #48b685 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #48b685 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #48b685 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #48b685 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #2f1e2e } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #06b6ef } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #ef6155 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #ef6155 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #ef6155 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #ef6155 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #f99b15 } /* Literal.Number.Integer.Long */
|
74
static/css/pastie.css
Normal file
74
static/css/pastie.css
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #888888 } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .k { color: #008800; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { color: #888888 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #888888 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #888888 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #888888 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #333333 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #666666 } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #008800 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */
|
||||||
|
.highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */
|
||||||
|
.highlight .na { color: #336699 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #003388 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #003366; font-weight: bold } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #555555 } /* Name.Decorator */
|
||||||
|
.highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nl { color: #336699; font-style: italic } /* Name.Label */
|
||||||
|
.highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .py { color: #336699; font-weight: bold } /* Name.Property */
|
||||||
|
.highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #336699 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #008800 } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #336699 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #dd7700 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #3333bb } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #336699 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
|
72
static/css/perldoc.css
Normal file
72
static/css/perldoc.css
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #eeeedd; }
|
||||||
|
.highlight .c { color: #228B22 } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .k { color: #8B008B; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { color: #228B22 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #228B22 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #1e889b } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #228B22 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #228B22 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #8B008B; font-weight: bold } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #aa0000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00aa00 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #8B008B; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #8B008B; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #8B008B; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #8B008B; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #8B008B; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #00688B; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #B452CD } /* Literal.Number */
|
||||||
|
.highlight .s { color: #CD5555 } /* Literal.String */
|
||||||
|
.highlight .na { color: #658b00 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #658b00 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #008b45; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #00688B } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #707a7c } /* Name.Decorator */
|
||||||
|
.highlight .ne { color: #008b45; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #008b45 } /* Name.Function */
|
||||||
|
.highlight .nn { color: #008b45; text-decoration: underline } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #8B008B; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #00688B } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #8B008B } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #B452CD } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #B452CD } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #B452CD } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #B452CD } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #B452CD } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #CD5555 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #CD5555 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #CD5555 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #CD5555 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #CD5555 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #CD5555 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #CD5555 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #1c7e71; font-style: italic } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #CD5555 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #cb6c20 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #1c7e71 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #CD5555 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #CD5555 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #658b00 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #008b45 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #00688B } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #00688B } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #00688B } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #00688B } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #B452CD } /* Literal.Number.Integer.Long */
|
84
static/css/pygments_monokai.css
Normal file
84
static/css/pygments_monokai.css
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.hll { background-color: #49483e }
|
||||||
|
.c { color: #959077 } /* Comment */
|
||||||
|
.err { color: #ed007e; background-color: #1e0010 } /* Error */
|
||||||
|
.esc { color: #f8f8f2 } /* Escape */
|
||||||
|
.g { color: #f8f8f2 } /* Generic */
|
||||||
|
.k { color: #66d9ef } /* Keyword */
|
||||||
|
.l { color: #ae81ff } /* Literal */
|
||||||
|
.n { color: #f8f8f2 } /* Name */
|
||||||
|
.o { color: #ff4689 } /* Operator */
|
||||||
|
.x { color: #f8f8f2 } /* Other */
|
||||||
|
.p { color: #f8f8f2 } /* Punctuation */
|
||||||
|
.ch { color: #959077 } /* Comment.Hashbang */
|
||||||
|
.cm { color: #959077 } /* Comment.Multiline */
|
||||||
|
.cp { color: #959077 } /* Comment.Preproc */
|
||||||
|
.cpf { color: #959077 } /* Comment.PreprocFile */
|
||||||
|
.c1 { color: #959077 } /* Comment.Single */
|
||||||
|
.cs { color: #959077 } /* Comment.Special */
|
||||||
|
.gd { color: #ff4689 } /* Generic.Deleted */
|
||||||
|
.ge { color: #f8f8f2; font-style: italic } /* Generic.Emph */
|
||||||
|
.ges { color: #f8f8f2; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.gr { color: #f8f8f2 } /* Generic.Error */
|
||||||
|
.gh { color: #f8f8f2 } /* Generic.Heading */
|
||||||
|
.gi { color: #a6e22e } /* Generic.Inserted */
|
||||||
|
.go { color: #66d9ef } /* Generic.Output */
|
||||||
|
.gp { color: #ff4689; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.gs { color: #f8f8f2; font-weight: bold } /* Generic.Strong */
|
||||||
|
.gu { color: #959077 } /* Generic.Subheading */
|
||||||
|
.gt { color: #f8f8f2 } /* Generic.Traceback */
|
||||||
|
.kc { color: #66d9ef } /* Keyword.Constant */
|
||||||
|
.kd { color: #66d9ef } /* Keyword.Declaration */
|
||||||
|
.kn { color: #ff4689 } /* Keyword.Namespace */
|
||||||
|
.kp { color: #66d9ef } /* Keyword.Pseudo */
|
||||||
|
.kr { color: #66d9ef } /* Keyword.Reserved */
|
||||||
|
.kt { color: #66d9ef } /* Keyword.Type */
|
||||||
|
.ld { color: #e6db74 } /* Literal.Date */
|
||||||
|
.m { color: #ae81ff } /* Literal.Number */
|
||||||
|
.s { color: #e6db74 } /* Literal.String */
|
||||||
|
.na { color: #a6e22e } /* Name.Attribute */
|
||||||
|
.nb { color: #f8f8f2 } /* Name.Builtin */
|
||||||
|
.nc { color: #a6e22e } /* Name.Class */
|
||||||
|
.no { color: #66d9ef } /* Name.Constant */
|
||||||
|
.nd { color: #a6e22e } /* Name.Decorator */
|
||||||
|
.ni { color: #f8f8f2 } /* Name.Entity */
|
||||||
|
.ne { color: #a6e22e } /* Name.Exception */
|
||||||
|
.nf { color: #a6e22e } /* Name.Function */
|
||||||
|
.nl { color: #f8f8f2 } /* Name.Label */
|
||||||
|
.nn { color: #f8f8f2 } /* Name.Namespace */
|
||||||
|
.nx { color: #a6e22e } /* Name.Other */
|
||||||
|
.py { color: #f8f8f2 } /* Name.Property */
|
||||||
|
.nt { color: #ff4689 } /* Name.Tag */
|
||||||
|
.nv { color: #f8f8f2 } /* Name.Variable */
|
||||||
|
.ow { color: #ff4689 } /* Operator.Word */
|
||||||
|
.pm { color: #f8f8f2 } /* Punctuation.Marker */
|
||||||
|
.w { color: #f8f8f2 } /* Text.Whitespace */
|
||||||
|
.mb { color: #ae81ff } /* Literal.Number.Bin */
|
||||||
|
.mf { color: #ae81ff } /* Literal.Number.Float */
|
||||||
|
.mh { color: #ae81ff } /* Literal.Number.Hex */
|
||||||
|
.mi { color: #ae81ff } /* Literal.Number.Integer */
|
||||||
|
.mo { color: #ae81ff } /* Literal.Number.Oct */
|
||||||
|
.sa { color: #e6db74 } /* Literal.String.Affix */
|
||||||
|
.sb { color: #e6db74 } /* Literal.String.Backtick */
|
||||||
|
.sc { color: #e6db74 } /* Literal.String.Char */
|
||||||
|
.dl { color: #e6db74 } /* Literal.String.Delimiter */
|
||||||
|
.sd { color: #e6db74 } /* Literal.String.Doc */
|
||||||
|
.s2 { color: #e6db74 } /* Literal.String.Double */
|
||||||
|
.se { color: #ae81ff } /* Literal.String.Escape */
|
||||||
|
.sh { color: #e6db74 } /* Literal.String.Heredoc */
|
||||||
|
.si { color: #e6db74 } /* Literal.String.Interpol */
|
||||||
|
.sx { color: #e6db74 } /* Literal.String.Other */
|
||||||
|
.sr { color: #e6db74 } /* Literal.String.Regex */
|
||||||
|
.s1 { color: #e6db74 } /* Literal.String.Single */
|
||||||
|
.ss { color: #e6db74 } /* Literal.String.Symbol */
|
||||||
|
.bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */
|
||||||
|
.fm { color: #a6e22e } /* Name.Function.Magic */
|
||||||
|
.vc { color: #f8f8f2 } /* Name.Variable.Class */
|
||||||
|
.vg { color: #f8f8f2 } /* Name.Variable.Global */
|
||||||
|
.vi { color: #f8f8f2 } /* Name.Variable.Instance */
|
||||||
|
.vm { color: #f8f8f2 } /* Name.Variable.Magic */
|
||||||
|
.il { color: #ae81ff } /* Literal.Number.Integer.Long */
|
68
static/css/rainbow_dash.css
Normal file
68
static/css/rainbow_dash.css
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; color: #4d4d4d }
|
||||||
|
.highlight .c { color: #0080ff; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #ffffff; background-color: #cc0000 } /* Error */
|
||||||
|
.highlight .k { color: #2c5dcd; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #2c5dcd } /* Operator */
|
||||||
|
.highlight .ch { color: #0080ff; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #0080ff; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #0080ff } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #0080ff; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #0080ff; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #0080ff; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { background-color: #ffcccc; border: 1px solid #c5060b } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #ff0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #2c5dcd; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { background-color: #ccffcc; border: 1px solid #00cc00 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #aaaaaa } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #2c5dcd; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #2c5dcd; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #c5060b } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #2c5dcd; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #2c5dcd; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #2c5dcd; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #2c5dcd } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #2c5dcd; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #5918bb; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #5918bb; font-weight: bold } /* Literal.Number */
|
||||||
|
.highlight .s { color: #00cc66 } /* Literal.String */
|
||||||
|
.highlight .na { color: #2c5dcd; font-style: italic } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #5918bb; font-weight: bold } /* Name.Builtin */
|
||||||
|
.highlight .nc { text-decoration: underline } /* Name.Class */
|
||||||
|
.highlight .no { color: #318495 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #ff8000; font-weight: bold } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #5918bb; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #5918bb; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #ff8000; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nt { color: #2c5dcd; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .ow { color: #2c5dcd; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #cbcbcb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #5918bb; font-weight: bold } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #5918bb; font-weight: bold } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #5918bb; font-weight: bold } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #5918bb; font-weight: bold } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #5918bb; font-weight: bold } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #00cc66 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #00cc66 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #00cc66 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #00cc66 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #00cc66; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #00cc66 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #c5060b; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #00cc66 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #00cc66 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #318495 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #00cc66 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #00cc66 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #c5060b; font-weight: bold } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #5918bb; font-weight: bold } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #ff8000; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .il { color: #5918bb; font-weight: bold } /* Literal.Number.Integer.Long */
|
85
static/css/rrt.css
Normal file
85
static/css/rrt.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #0000ff }
|
||||||
|
.highlight { background: #000000; color: #dddddd }
|
||||||
|
.highlight .c { color: #00ff00 } /* Comment */
|
||||||
|
.highlight .err { color: #dddddd } /* Error */
|
||||||
|
.highlight .esc { color: #dddddd } /* Escape */
|
||||||
|
.highlight .g { color: #dddddd } /* Generic */
|
||||||
|
.highlight .k { color: #ff0000 } /* Keyword */
|
||||||
|
.highlight .l { color: #dddddd } /* Literal */
|
||||||
|
.highlight .n { color: #dddddd } /* Name */
|
||||||
|
.highlight .o { color: #dddddd } /* Operator */
|
||||||
|
.highlight .x { color: #dddddd } /* Other */
|
||||||
|
.highlight .p { color: #dddddd } /* Punctuation */
|
||||||
|
.highlight .ch { color: #00ff00 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #00ff00 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #e5e5e5 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #00ff00 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #00ff00 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #00ff00 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #dddddd } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #dddddd } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #dddddd } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #dddddd } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #dddddd } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #dddddd } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #dddddd } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #dddddd } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #dddddd } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #dddddd } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #dddddd } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #ff0000 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #ff0000 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #ff0000 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #ff0000 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #ff0000 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #ee82ee } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #dddddd } /* Literal.Date */
|
||||||
|
.highlight .m { color: #ff00ff } /* Literal.Number */
|
||||||
|
.highlight .s { color: #87ceeb } /* Literal.String */
|
||||||
|
.highlight .na { color: #dddddd } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #dddddd } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #dddddd } /* Name.Class */
|
||||||
|
.highlight .no { color: #7fffd4 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #dddddd } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #dddddd } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #dddddd } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #ffff00 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #dddddd } /* Name.Label */
|
||||||
|
.highlight .nn { color: #dddddd } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #dddddd } /* Name.Other */
|
||||||
|
.highlight .py { color: #dddddd } /* Name.Property */
|
||||||
|
.highlight .nt { color: #dddddd } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #eedd82 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #dddddd } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #dddddd } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #dddddd } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #ff00ff } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #ff00ff } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #ff00ff } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #ff00ff } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #ff00ff } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #87ceeb } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #87ceeb } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #87ceeb } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #87ceeb } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #87ceeb } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #87ceeb } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #87ceeb } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #87ceeb } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #87ceeb } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #87ceeb } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #87ceeb } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #87ceeb } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #87ceeb } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #dddddd } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #ffff00 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #eedd82 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #eedd82 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #eedd82 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #eedd82 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #ff00ff } /* Literal.Number.Integer.Long */
|
66
static/css/sas.css
Normal file
66
static/css/sas.css
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #008800; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .g { color: #2c2cff } /* Generic */
|
||||||
|
.highlight .k { color: #2c2cff } /* Keyword */
|
||||||
|
.highlight .x { background-color: #ffffe0 } /* Other */
|
||||||
|
.highlight .ch { color: #008800; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #008800; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #008800; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #008800; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #008800; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #008800; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #2c2cff } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #008800 } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #2c2cff } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #d30202 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #2c2cff } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #2c2cff } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #2c2cff } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #2c2cff } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #2c2cff } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #2c2cff } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #2c2cff } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #2c2cff; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #2c2cff } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #2c2cff } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #2c2cff } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #353580; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #2c2cff } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #2c8553; font-weight: bold } /* Literal.Number */
|
||||||
|
.highlight .s { color: #800080 } /* Literal.String */
|
||||||
|
.highlight .nb { color: #2c2cff } /* Name.Builtin */
|
||||||
|
.highlight .nf { font-weight: bold; font-style: italic } /* Name.Function */
|
||||||
|
.highlight .nv { color: #2c2cff; font-weight: bold } /* Name.Variable */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #2c8553; font-weight: bold } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #2c8553; font-weight: bold } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #2c8553; font-weight: bold } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #2c8553; font-weight: bold } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #2c8553; font-weight: bold } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #800080 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #800080 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #800080 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #800080 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #800080 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #800080 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #800080 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #800080 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #800080 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #800080 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #800080 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #800080 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #800080 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #2c2cff } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { font-weight: bold; font-style: italic } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #2c2cff; font-weight: bold } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #2c2cff; font-weight: bold } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #2c2cff; font-weight: bold } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #2c2cff; font-weight: bold } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #2c8553; font-weight: bold } /* Literal.Number.Integer.Long */
|
85
static/css/solarized-dark.css
Normal file
85
static/css/solarized-dark.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #586e75; background-color: #073642; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #586e75; background-color: #073642; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #073642 }
|
||||||
|
.highlight { background: #002b36; color: #839496 }
|
||||||
|
.highlight .c { color: #586e75; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #839496; background-color: #dc322f } /* Error */
|
||||||
|
.highlight .esc { color: #839496 } /* Escape */
|
||||||
|
.highlight .g { color: #839496 } /* Generic */
|
||||||
|
.highlight .k { color: #859900 } /* Keyword */
|
||||||
|
.highlight .l { color: #839496 } /* Literal */
|
||||||
|
.highlight .n { color: #839496 } /* Name */
|
||||||
|
.highlight .o { color: #586e75 } /* Operator */
|
||||||
|
.highlight .x { color: #839496 } /* Other */
|
||||||
|
.highlight .p { color: #839496 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #586e75; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #586e75; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #d33682 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #586e75 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #586e75; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #586e75; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #dc322f } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #839496; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #839496; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #dc322f } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #839496; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #859900 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #839496 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #268bd2; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #839496; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #839496; text-decoration: underline } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #268bd2 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #2aa198 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #2aa198 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #cb4b16 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #859900 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #859900 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #b58900 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #839496 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #2aa198 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #2aa198 } /* Literal.String */
|
||||||
|
.highlight .na { color: #839496 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #268bd2 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #268bd2 } /* Name.Class */
|
||||||
|
.highlight .no { color: #268bd2 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #268bd2 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #268bd2 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #268bd2 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #268bd2 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #268bd2 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #268bd2 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #839496 } /* Name.Other */
|
||||||
|
.highlight .py { color: #839496 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #268bd2 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #268bd2 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #859900 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #839496 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #839496 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #2aa198 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #2aa198 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #2aa198 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #2aa198 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #2aa198 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #2aa198 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #2aa198 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #2aa198 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #2aa198 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #586e75 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #2aa198 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #2aa198 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #2aa198 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #2aa198 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #2aa198 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #cb4b16 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #2aa198 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #2aa198 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #268bd2 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #268bd2 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #268bd2 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #268bd2 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #268bd2 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #268bd2 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #2aa198 } /* Literal.Number.Integer.Long */
|
85
static/css/solarized-light.css
Normal file
85
static/css/solarized-light.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #93a1a1; background-color: #eee8d5; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #93a1a1; background-color: #eee8d5; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #eee8d5 }
|
||||||
|
.highlight { background: #fdf6e3; color: #657b83 }
|
||||||
|
.highlight .c { color: #93a1a1; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #657b83; background-color: #dc322f } /* Error */
|
||||||
|
.highlight .esc { color: #657b83 } /* Escape */
|
||||||
|
.highlight .g { color: #657b83 } /* Generic */
|
||||||
|
.highlight .k { color: #859900 } /* Keyword */
|
||||||
|
.highlight .l { color: #657b83 } /* Literal */
|
||||||
|
.highlight .n { color: #657b83 } /* Name */
|
||||||
|
.highlight .o { color: #93a1a1 } /* Operator */
|
||||||
|
.highlight .x { color: #657b83 } /* Other */
|
||||||
|
.highlight .p { color: #657b83 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #93a1a1; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #93a1a1; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #d33682 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #93a1a1 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #93a1a1; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #93a1a1; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #dc322f } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #657b83; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #657b83; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #dc322f } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #657b83; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #859900 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #657b83 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #268bd2; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #657b83; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #657b83; text-decoration: underline } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #268bd2 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #2aa198 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #2aa198 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #cb4b16 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #859900 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #859900 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #b58900 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #657b83 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #2aa198 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #2aa198 } /* Literal.String */
|
||||||
|
.highlight .na { color: #657b83 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #268bd2 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #268bd2 } /* Name.Class */
|
||||||
|
.highlight .no { color: #268bd2 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #268bd2 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #268bd2 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #268bd2 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #268bd2 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #268bd2 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #268bd2 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #657b83 } /* Name.Other */
|
||||||
|
.highlight .py { color: #657b83 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #268bd2 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #268bd2 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #859900 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #657b83 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #657b83 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #2aa198 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #2aa198 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #2aa198 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #2aa198 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #2aa198 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #2aa198 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #2aa198 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #2aa198 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #2aa198 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #93a1a1 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #2aa198 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #2aa198 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #2aa198 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #2aa198 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #2aa198 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #cb4b16 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #2aa198 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #2aa198 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #268bd2 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #268bd2 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #268bd2 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #268bd2 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #268bd2 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #268bd2 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #2aa198 } /* Literal.Number.Integer.Long */
|
85
static/css/staroffice.css
Normal file
85
static/css/staroffice.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; color: #000080 }
|
||||||
|
.highlight .c { color: #696969 } /* Comment */
|
||||||
|
.highlight .err { color: #800000 } /* Error */
|
||||||
|
.highlight .esc { color: #000080 } /* Escape */
|
||||||
|
.highlight .g { color: #000080 } /* Generic */
|
||||||
|
.highlight .k { color: #000080 } /* Keyword */
|
||||||
|
.highlight .l { color: #EE0000 } /* Literal */
|
||||||
|
.highlight .n { color: #008000 } /* Name */
|
||||||
|
.highlight .o { color: #000080 } /* Operator */
|
||||||
|
.highlight .x { color: #000080 } /* Other */
|
||||||
|
.highlight .p { color: #000080 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #696969 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #696969 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #696969 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #696969 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #696969 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #696969 } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #000080 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #000080 } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #000080 } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #000080 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #000080 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #000080 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #000080 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #000080 } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #000080 } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #000080 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #000080 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #000080 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #000080 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #000080 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #000080 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #000080 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #EE0000 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #EE0000 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #EE0000 } /* Literal.String */
|
||||||
|
.highlight .na { color: #008000 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #008000 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #008000 } /* Name.Class */
|
||||||
|
.highlight .no { color: #008000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #008000 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #008000 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #008000 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #008000 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #008000 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #008000 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #008000 } /* Name.Other */
|
||||||
|
.highlight .py { color: #008000 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #008000 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #008000 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #000080 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #000080 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #000080 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #EE0000 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #EE0000 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #EE0000 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #EE0000 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #EE0000 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #EE0000 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #EE0000 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #EE0000 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #EE0000 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #EE0000 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #EE0000 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #EE0000 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #EE0000 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #EE0000 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #EE0000 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #EE0000 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #EE0000 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #EE0000 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #008000 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #008000 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #008000 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #008000 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #008000 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #EE0000 } /* Literal.Number.Integer.Long */
|
85
static/css/stata-dark.css
Normal file
85
static/css/stata-dark.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #49483e }
|
||||||
|
.highlight { background: #232629; color: #cccccc }
|
||||||
|
.highlight .c { color: #777777; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .esc { color: #cccccc } /* Escape */
|
||||||
|
.highlight .g { color: #cccccc } /* Generic */
|
||||||
|
.highlight .k { color: #7686bb; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .l { color: #cccccc } /* Literal */
|
||||||
|
.highlight .n { color: #cccccc } /* Name */
|
||||||
|
.highlight .o { color: #cccccc } /* Operator */
|
||||||
|
.highlight .x { color: #cccccc } /* Other */
|
||||||
|
.highlight .p { color: #cccccc } /* Punctuation */
|
||||||
|
.highlight .ch { color: #777777; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #777777; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #777777; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #777777; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #777777; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #777777; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #cccccc } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #cccccc } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #cccccc } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #cccccc } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #cccccc } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #cccccc } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #cccccc } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #ffffff } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #cccccc } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #cccccc } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #cccccc } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #7686bb; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #7686bb; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #7686bb; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #7686bb; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #7686bb; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #7686bb; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #cccccc } /* Literal.Date */
|
||||||
|
.highlight .m { color: #4FB8CC } /* Literal.Number */
|
||||||
|
.highlight .s { color: #51cc99 } /* Literal.String */
|
||||||
|
.highlight .na { color: #cccccc } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #cccccc } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #cccccc } /* Name.Class */
|
||||||
|
.highlight .no { color: #cccccc } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #cccccc } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #cccccc } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #cccccc } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #6a6aff } /* Name.Function */
|
||||||
|
.highlight .nl { color: #cccccc } /* Name.Label */
|
||||||
|
.highlight .nn { color: #cccccc } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #e2828e } /* Name.Other */
|
||||||
|
.highlight .py { color: #cccccc } /* Name.Property */
|
||||||
|
.highlight .nt { color: #cccccc } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #7AB4DB; font-weight: bold } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #cccccc } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #cccccc } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #4FB8CC } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #4FB8CC } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #4FB8CC } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #4FB8CC } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #4FB8CC } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #51cc99 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #51cc99 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #51cc99 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #51cc99 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #51cc99 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #51cc99 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #51cc99 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #51cc99 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #51cc99 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #51cc99 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #51cc99 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #51cc99 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #51cc99 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #cccccc } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #6a6aff } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #7AB4DB; font-weight: bold } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #BE646C; font-weight: bold } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #7AB4DB; font-weight: bold } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #7AB4DB; font-weight: bold } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #4FB8CC } /* Literal.Number.Integer.Long */
|
52
static/css/stata-light.css
Normal file
52
static/css/stata-light.css
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; color: #111111 }
|
||||||
|
.highlight .c { color: #008800; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .k { color: #353580; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { color: #008800; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #008800; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #008800; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #008800; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #008800; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #008800; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .kc { color: #353580; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #353580; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #353580; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #353580; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #353580; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #353580; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #2c2cff } /* Literal.Number */
|
||||||
|
.highlight .s { color: #7a2424 } /* Literal.String */
|
||||||
|
.highlight .nf { color: #2c2cff } /* Name.Function */
|
||||||
|
.highlight .nx { color: #be646c } /* Name.Other */
|
||||||
|
.highlight .nv { color: #35baba; font-weight: bold } /* Name.Variable */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #2c2cff } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #2c2cff } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #2c2cff } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #2c2cff } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #2c2cff } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #7a2424 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #7a2424 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #7a2424 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #7a2424 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #7a2424 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #7a2424 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #7a2424 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #7a2424 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #7a2424 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #7a2424 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #7a2424 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #7a2424 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #7a2424 } /* Literal.String.Symbol */
|
||||||
|
.highlight .fm { color: #2c2cff } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #35baba; font-weight: bold } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #b5565e; font-weight: bold } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #35baba; font-weight: bold } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #35baba; font-weight: bold } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #2c2cff } /* Literal.Number.Integer.Long */
|
52
static/css/stata.css
Normal file
52
static/css/stata.css
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; color: #111111 }
|
||||||
|
.highlight .c { color: #008800; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .k { color: #353580; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .ch { color: #008800; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #008800; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #008800; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #008800; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #008800; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #008800; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .kc { color: #353580; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #353580; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #353580; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #353580; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #353580; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #353580; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #2c2cff } /* Literal.Number */
|
||||||
|
.highlight .s { color: #7a2424 } /* Literal.String */
|
||||||
|
.highlight .nf { color: #2c2cff } /* Name.Function */
|
||||||
|
.highlight .nx { color: #be646c } /* Name.Other */
|
||||||
|
.highlight .nv { color: #35baba; font-weight: bold } /* Name.Variable */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #2c2cff } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #2c2cff } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #2c2cff } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #2c2cff } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #2c2cff } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #7a2424 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #7a2424 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #7a2424 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #7a2424 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #7a2424 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #7a2424 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #7a2424 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #7a2424 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #7a2424 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #7a2424 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #7a2424 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #7a2424 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #7a2424 } /* Literal.String.Symbol */
|
||||||
|
.highlight .fm { color: #2c2cff } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #35baba; font-weight: bold } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #b5565e; font-weight: bold } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #35baba; font-weight: bold } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #35baba; font-weight: bold } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #2c2cff } /* Literal.Number.Integer.Long */
|
84
static/css/tango.css
Normal file
84
static/css/tango.css
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #f8f8f8; }
|
||||||
|
.highlight .c { color: #8f5902; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a40000; border: 1px solid #ef2929 } /* Error */
|
||||||
|
.highlight .g { color: #000000 } /* Generic */
|
||||||
|
.highlight .k { color: #204a87; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .l { color: #000000 } /* Literal */
|
||||||
|
.highlight .n { color: #000000 } /* Name */
|
||||||
|
.highlight .o { color: #ce5c00; font-weight: bold } /* Operator */
|
||||||
|
.highlight .x { color: #000000 } /* Other */
|
||||||
|
.highlight .p { color: #000000; font-weight: bold } /* Punctuation */
|
||||||
|
.highlight .ch { color: #8f5902; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #8f5902; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #8f5902; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #8f5902; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #8f5902; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #8f5902; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #a40000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #000000; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #000000; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #ef2929 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #000000; font-style: italic } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #8f5902 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #000000; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #a40000; font-weight: bold } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #204a87; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #204a87; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #204a87; font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #204a87; font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #204a87; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #204a87; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #000000 } /* Literal.Date */
|
||||||
|
.highlight .m { color: #0000cf; font-weight: bold } /* Literal.Number */
|
||||||
|
.highlight .s { color: #4e9a06 } /* Literal.String */
|
||||||
|
.highlight .na { color: #c4a000 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #204a87 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #000000 } /* Name.Class */
|
||||||
|
.highlight .no { color: #000000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #5c35cc; font-weight: bold } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #ce5c00 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #cc0000; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #000000 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #f57900 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #000000 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #000000 } /* Name.Other */
|
||||||
|
.highlight .py { color: #000000 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #204a87; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #000000 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #204a87; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #000000; font-weight: bold } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #f8f8f8 } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #0000cf; font-weight: bold } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #0000cf; font-weight: bold } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #0000cf; font-weight: bold } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #0000cf; font-weight: bold } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #0000cf; font-weight: bold } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #4e9a06 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #4e9a06 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #4e9a06 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #4e9a06 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #8f5902; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #4e9a06 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #4e9a06 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #4e9a06 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #4e9a06 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #4e9a06 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #4e9a06 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #4e9a06 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #4e9a06 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #3465a4 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #000000 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #000000 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #000000 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #000000 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #000000 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #0000cf; font-weight: bold } /* Literal.Number.Integer.Long */
|
73
static/css/trac.css
Normal file
73
static/css/trac.css
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #999988; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .k { font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { font-weight: bold } /* Operator */
|
||||||
|
.highlight .ch { color: #999988; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #999988; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #999999 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #009999 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #bb8844 } /* Literal.String */
|
||||||
|
.highlight .na { color: #008080 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #999999 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #008080 } /* Name.Constant */
|
||||||
|
.highlight .ni { color: #800080 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nn { color: #555555 } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #000080 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #008080 } /* Name.Variable */
|
||||||
|
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #009999 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #009999 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #bb8844 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #bb8844 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #bb8844 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #bb8844 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #bb8844 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #bb8844 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #bb8844 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #bb8844 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #bb8844 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #bb8844 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #808000 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #bb8844 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #bb8844 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #990000; font-weight: bold } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #008080 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #008080 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #008080 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
|
85
static/css/vim.css
Normal file
85
static/css/vim.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #222222 }
|
||||||
|
.highlight { background: #000000; color: #cccccc }
|
||||||
|
.highlight .c { color: #000080 } /* Comment */
|
||||||
|
.highlight .err { color: #cccccc; border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .esc { color: #cccccc } /* Escape */
|
||||||
|
.highlight .g { color: #cccccc } /* Generic */
|
||||||
|
.highlight .k { color: #cdcd00 } /* Keyword */
|
||||||
|
.highlight .l { color: #cccccc } /* Literal */
|
||||||
|
.highlight .n { color: #cccccc } /* Name */
|
||||||
|
.highlight .o { color: #3399cc } /* Operator */
|
||||||
|
.highlight .x { color: #cccccc } /* Other */
|
||||||
|
.highlight .p { color: #cccccc } /* Punctuation */
|
||||||
|
.highlight .ch { color: #000080 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #000080 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #000080 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #000080 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #000080 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #cd0000; font-weight: bold } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #cd0000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #cccccc; font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #cccccc; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00cd00 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #cccccc; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0044DD } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #cdcd00 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #00cd00 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #cd00cd } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #cdcd00 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #cdcd00 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #00cd00 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #cccccc } /* Literal.Date */
|
||||||
|
.highlight .m { color: #cd00cd } /* Literal.Number */
|
||||||
|
.highlight .s { color: #cd0000 } /* Literal.String */
|
||||||
|
.highlight .na { color: #cccccc } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #cd00cd } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #00cdcd } /* Name.Class */
|
||||||
|
.highlight .no { color: #cccccc } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #cccccc } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #cccccc } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #666699; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #cccccc } /* Name.Function */
|
||||||
|
.highlight .nl { color: #cccccc } /* Name.Label */
|
||||||
|
.highlight .nn { color: #cccccc } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #cccccc } /* Name.Other */
|
||||||
|
.highlight .py { color: #cccccc } /* Name.Property */
|
||||||
|
.highlight .nt { color: #cccccc } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #00cdcd } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #cdcd00 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #cccccc } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #cccccc } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #cd00cd } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #cd00cd } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #cd00cd } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #cd00cd } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #cd00cd } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #cd0000 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #cd0000 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #cd0000 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #cd0000 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #cd0000 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #cd0000 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #cd0000 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #cd0000 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #cd0000 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #cd0000 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #cd0000 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #cd0000 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #cd0000 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #cd00cd } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #cccccc } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #00cdcd } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #00cdcd } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #00cdcd } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #00cdcd } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #cd00cd } /* Literal.Number.Integer.Long */
|
44
static/css/vs.css
Normal file
44
static/css/vs.css
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #008000 } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { color: #0000ff } /* Keyword */
|
||||||
|
.highlight .ch { color: #008000 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #008000 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #0000ff } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #008000 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #008000 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #008000 } /* Comment.Special */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||||
|
.highlight .gh { font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gp { font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .kc { color: #0000ff } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #0000ff } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #0000ff } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #0000ff } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #0000ff } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #2b91af } /* Keyword.Type */
|
||||||
|
.highlight .s { color: #a31515 } /* Literal.String */
|
||||||
|
.highlight .nc { color: #2b91af } /* Name.Class */
|
||||||
|
.highlight .ow { color: #0000ff } /* Operator.Word */
|
||||||
|
.highlight .sa { color: #a31515 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #a31515 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #a31515 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #a31515 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #a31515 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #a31515 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #a31515 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #a31515 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #a31515 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #a31515 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #a31515 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #a31515 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #a31515 } /* Literal.String.Symbol */
|
68
static/css/xcode.css
Normal file
68
static/css/xcode.css
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #177500 } /* Comment */
|
||||||
|
.highlight .err { color: #000000 } /* Error */
|
||||||
|
.highlight .k { color: #A90D91 } /* Keyword */
|
||||||
|
.highlight .l { color: #1C01CE } /* Literal */
|
||||||
|
.highlight .n { color: #000000 } /* Name */
|
||||||
|
.highlight .o { color: #000000 } /* Operator */
|
||||||
|
.highlight .ch { color: #177500 } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #177500 } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #633820 } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #177500 } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #177500 } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #177500 } /* Comment.Special */
|
||||||
|
.highlight .kc { color: #A90D91 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #A90D91 } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #A90D91 } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #A90D91 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #A90D91 } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #A90D91 } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #1C01CE } /* Literal.Date */
|
||||||
|
.highlight .m { color: #1C01CE } /* Literal.Number */
|
||||||
|
.highlight .s { color: #C41A16 } /* Literal.String */
|
||||||
|
.highlight .na { color: #836C28 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #A90D91 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #3F6E75 } /* Name.Class */
|
||||||
|
.highlight .no { color: #000000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #000000 } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #000000 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #000000 } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #000000 } /* Name.Function */
|
||||||
|
.highlight .nl { color: #000000 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #000000 } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #000000 } /* Name.Other */
|
||||||
|
.highlight .py { color: #000000 } /* Name.Property */
|
||||||
|
.highlight .nt { color: #000000 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #000000 } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #000000 } /* Operator.Word */
|
||||||
|
.highlight .mb { color: #1C01CE } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #1C01CE } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #1C01CE } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #1C01CE } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #1C01CE } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #C41A16 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #C41A16 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #2300CE } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #C41A16 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #C41A16 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #C41A16 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #C41A16 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #C41A16 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #C41A16 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #C41A16 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #C41A16 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #C41A16 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #C41A16 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #5B269A } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #000000 } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #000000 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #000000 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #000000 } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #000000 } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #1C01CE } /* Literal.Number.Integer.Long */
|
85
static/css/zenburn.css
Normal file
85
static/css/zenburn.css
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
pre { line-height: 125%; }
|
||||||
|
td.linenos .normal { color: #5d6262; background-color: #353535; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos { color: #5d6262; background-color: #353535; padding-left: 5px; padding-right: 5px; }
|
||||||
|
td.linenos .special { color: #7a8080; background-color: #353535; padding-left: 5px; padding-right: 5px; }
|
||||||
|
span.linenos.special { color: #7a8080; background-color: #353535; padding-left: 5px; padding-right: 5px; }
|
||||||
|
.highlight .hll { background-color: #484848 }
|
||||||
|
.highlight { background: #3f3f3f; color: #dcdccc }
|
||||||
|
.highlight .c { color: #7f9f7f; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #e37170; font-weight: bold } /* Error */
|
||||||
|
.highlight .esc { color: #dcdccc } /* Escape */
|
||||||
|
.highlight .g { color: #ecbcbc; font-weight: bold } /* Generic */
|
||||||
|
.highlight .k { color: #efdcbc } /* Keyword */
|
||||||
|
.highlight .l { color: #9fafaf } /* Literal */
|
||||||
|
.highlight .n { color: #dcdccc } /* Name */
|
||||||
|
.highlight .o { color: #f0efd0 } /* Operator */
|
||||||
|
.highlight .x { color: #dcdccc } /* Other */
|
||||||
|
.highlight .p { color: #f0efd0 } /* Punctuation */
|
||||||
|
.highlight .ch { color: #7f9f7f; font-style: italic } /* Comment.Hashbang */
|
||||||
|
.highlight .cm { color: #7f9f7f; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #dfaf8f; font-weight: bold; font-style: italic } /* Comment.Preproc */
|
||||||
|
.highlight .cpf { color: #cc9393; font-style: italic } /* Comment.PreprocFile */
|
||||||
|
.highlight .c1 { color: #7f9f7f; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #dfdfdf; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #c3bf9f; font-weight: bold; background-color: #313c36 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #ffffff; font-weight: bold } /* Generic.Emph */
|
||||||
|
.highlight .ges { color: #ecbcbc; font-weight: bold } /* Generic.EmphStrong */
|
||||||
|
.highlight .gr { color: #ecbcbc; font-weight: bold } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #efefef; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #709080; font-weight: bold; background-color: #313c36 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #5b605e; font-weight: bold } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #ecbcbc; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #ecbcbc; font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #efefef; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #80d4aa; font-weight: bold; background-color: #2f2f2f } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #dca3a3 } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #f0dfaf } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #f0dfaf } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #efdcbc } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #efdcbc } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #dfdfbf; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #9fafaf } /* Literal.Date */
|
||||||
|
.highlight .m { color: #8cd0d3 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #cc9393 } /* Literal.String */
|
||||||
|
.highlight .na { color: #efef8f } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #efef8f } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #efef8f } /* Name.Class */
|
||||||
|
.highlight .no { color: #dca3a3 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #dcdccc } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #cfbfaf } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #c3bf9f; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #efef8f } /* Name.Function */
|
||||||
|
.highlight .nl { color: #dcdccc } /* Name.Label */
|
||||||
|
.highlight .nn { color: #dcdccc } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #dcdccc } /* Name.Other */
|
||||||
|
.highlight .py { color: #dcdccc } /* Name.Property */
|
||||||
|
.highlight .nt { color: #e89393; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #dcdccc } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #f0efd0 } /* Operator.Word */
|
||||||
|
.highlight .pm { color: #f0efd0 } /* Punctuation.Marker */
|
||||||
|
.highlight .w { color: #dcdccc } /* Text.Whitespace */
|
||||||
|
.highlight .mb { color: #8cd0d3 } /* Literal.Number.Bin */
|
||||||
|
.highlight .mf { color: #c0bed1 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #8cd0d3 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #8cd0d3 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #8cd0d3 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sa { color: #cc9393 } /* Literal.String.Affix */
|
||||||
|
.highlight .sb { color: #cc9393 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #cc9393 } /* Literal.String.Char */
|
||||||
|
.highlight .dl { color: #cc9393 } /* Literal.String.Delimiter */
|
||||||
|
.highlight .sd { color: #7f9f7f } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #cc9393 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #cc9393 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #cc9393 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #dca3a3; font-weight: bold } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #cc9393 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #cc9393 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #cc9393 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #cc9393 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #dcdccc } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .fm { color: #efef8f } /* Name.Function.Magic */
|
||||||
|
.highlight .vc { color: #dcdccc } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #dcdccc } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #dcdccc } /* Name.Variable.Instance */
|
||||||
|
.highlight .vm { color: #dcdccc } /* Name.Variable.Magic */
|
||||||
|
.highlight .il { color: #8cd0d3 } /* Literal.Number.Integer.Long */
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user