Bloc de notas con Tkinter y SQLite, pensado para ser ligero y portable.
- Notas con persistencia en SQLite.
- Editor con busqueda, reemplazo y resaltado.
- Formato basico: negrita, cursiva, subrayado, tachado, colores.
- Inserciones rapidas (titulos, listas, checklist, bloques de codigo, enlaces).
- Exportar a
.txt/.mde importar.md. - Multilenguaje (es/en/pt/fr) y temas (warm/dark/minimal/retro).
- Barra de estado con contadores y estado de guardado.
- Plantillas configurables desde
settings.json. - Filtros por tags y ordenamiento (recientes / A-Z / pines primero).
- Python 3.10+
python block.pyOpciones CLI:
python block.py --reset-settings
python block.py --debugbloc_notas/
block.py
src/
app.py
notes_app.py
storage_sqlite.py
export_import.py
models.py
controllers/
ui/
tests/
Tabla notes (SQLite):
id(TEXT UUID)title(TEXT)content(TEXT)tags(TEXT, separadas por coma)pinned(INTEGER 0/1)created_at,updated_at(TEXT ISO)
settings.jsonse crea automaticamente al guardar configuracion.- Puedes restablecerla con
--reset-settings. - Formatos de fecha/hora usan
strftimey se validan al cargar. - Si hay problemas de configuracion, se muestran avisos en la barra de estado.
Ejemplo de settings.json:
{
"settings_version": 1,
"theme": "warm",
"language": "es",
"datetime_format": "%Y-%m-%d %H:%M",
"date_format": "%Y-%m-%d",
"search": {
"term": "",
"match_case": false,
"regex": false,
"whole_word": false
},
"view": {
"status_bar": true,
"zoom": 100,
"focus": false
},
"tab_size": 4,
"sidebar": {
"sort_mode": "pinned",
"tags": []
},
"templates": {
"quick_note": "Plantilla opcional"
}
}pytestEdicion:
Ctrl+Z/Ctrl+YoCtrl+Shift+Z: Deshacer / RehacerCtrl+X/Ctrl+C/Ctrl+V: Cortar / Copiar / PegarCtrl+A: Seleccionar todoCtrl+L: Seleccionar lineaCtrl+D: Seleccionar palabra
Formato:
Ctrl+B/Ctrl+I/Ctrl+U: Negrita / Cursiva / SubrayadoCtrl+Shift+X: TachadoCtrl+Shift+K: Limpiar formato (seleccion)Ctrl+Plus/Ctrl+-: Tamano + / -Ctrl+0: Restablecer tamano
Insertar:
Ctrl+Shift+H: EncabezadoCtrl+Shift+L: ListaCtrl+Shift+S: SeparadorCtrl+Alt+1/2/3: H1 / H2 / H3Ctrl+Alt+U: Insertar enlaceCtrl+Alt+I: Codigo inlineCtrl+Alt+G: Bloque de codigoCtrl+Shift+D: FechaCtrl+Alt+T: Fecha y hora
Buscar:
Ctrl+FoCtrl+H: Buscar en notaF3/Shift+F3: Buscar siguiente / anteriorCtrl+F2: Buscar en lista
Vista:
Ctrl+Alt++/Ctrl+Alt+-: Zoom +Ctrl+Alt+0: Reset zoomCtrl+Shift+F: Modo enfoque
Por defecto se ignoran:
notes.dbsettings.json
Por defecto se ignoran:
notes.dbsettings.json