Posiblemente, los problemas derivados de un mal uso o mala comprensión del encoding, sea uno de los principales dolores de cabeza para muchos desarrolladores.
Es fácil determinar que cuando en una web estamos viendo «sensación» en vez de «sensación», es que pasa algo con el encoding.
¿Cómo solventar este problema en la consola de windows?
Pues simplemente dos pasos:
Establecer como tipo de letra en las propiedades del intérprete de comandos (el conocido "Símbolo de sistema de Windows") "Consolas" o "Lucida Console"
Cambiar la "página de códigos" utilizada empleando el comando chcp. En concreto, para utilizar la codificación de caracteres CP-1252 hay que teclear: chcp 1252. O si tu proyecto utiliza UTF-8, ejecutar chcp 65001
¿Puedo confiar en las funciones de la Plataforma Web para crear mi aplicación?
Una visión general de las APIs HTML5 de integración de dispositivos
Enlace web:
Requiere una versión mayor a la 4 de JHipster y cuya definición sea AngularJS
Para tener temas Bootswatch en lugar del tema por defecto sólo tiene que sustituir el css bootstrap con el css del tema bootswatch. Sin embargo, si desea un conmutador de tema fresco para cambiar entre los temas de Bootswatch dinámicamente, a continuación, siga esta sugerencia.
Nota: reemplace ‘pscApp’ con el nombre generado de su aplicación.
Agrege los siguientes ficheros:
Controlador
Agrega el siguiente controlador como bootswatch.controller.js bajo la ruta webapp/app/components/bootswatch
(function() {
'use strict';
angular
.module('pscApp')
.controller('BootswatchController', BootswatchController);
BootswatchController.$inject = ['$scope', 'BootSwatchService'];
function BootswatchController ($scope, BootSwatchService) {
/*Get the list of availabel bootswatch themes*/
BootSwatchService.get().then(function(themes) {
$scope.themes = themes.themes;
$scope.themes.unshift({name:'Default',css:''});
//$scope.themes.push({name:'Default',css:''});
});
}
})();
Servicio
Agrega el siguiente servicio como bootswatch.service.js bajo la ruta webapp/app/components/bootswatch
Agrega la siguiente directiva como bootswatch.directive.js bajo la ruta webapp/app/components/bootswatch
(function() {
'use strict';
angular
.module('pscApp')
.directive('jhSwitchTheme', jhSwitchTheme);
function jhSwitchTheme () {
/*Directive binds to anchor to update the bootswatch theme selected*/
return {
restrict: 'A',
scope: {
theme : '=jhSwitchTheme'
},
link: function (scope, element, attrs) {
var currentTheme = $("#bootswatch-css").attr('title');
if(scope.theme.name === currentTheme){
element.parent().addClass("active");
}
element.on('click',function(){
$("#bootswatch-css").attr("href", scope.theme.css);
$(".theme-link").removeClass("active");
element.parent().addClass("active");
});
}
};
}
})();
En el index.html:
Agregue lo siguiente al archivo index.html después de la tarea de construcción CSS vendor.css para que éstas no se minifiquen y compacten por tarea de compilación.
Añada en el header
...
Añada lo siguiente en el pie de página
Agrege los siguientes script tags en el fichero index.html manualmente.
Si ‘gulp inject’ falla, recibirá errores de angular
Abrimos el cmd ( "Windows + R" y escribimos "cmd" ) con permiso de administrador y copamos el siguiente código. Pulsamos intro y, "Listo".
Nota:Revisa el directorio (notepadPath) donde tienes instalado el programa notepad++. En mi caso particular, notepad se encuentra en la siguiente ruta C:\Program Files (x86)\npp.7.2\
@echo off
SET notepadPath=C:\Program Files (x86)\npp.7.2\notepad++.exe
rem add it for all file types
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with notepad++" /t REG_SZ /v "" /d "Open with notepad++" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with notepad++" /t REG_EXPAND_SZ /v "Icon" /d "%notepadPath%,0" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with notepad++\command" /t REG_SZ /v "" /d "%notepadPath% %1" /f
rem add it for folders
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with notepad++" /t REG_SZ /v "" /d "Open with notepad++" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with notepad++" /t REG_EXPAND_SZ /v "Icon" /d "%notepadPath%,0" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with notepad++\command" /t REG_SZ /v "" /d "%notepadPath% %1" /f
pause
A modo de ejemplo vamos a hacerlo lo mismo para Brackets, para ver que es aplicable para todos los programas.
@echo off
SET st2Path=C:\Program Files (x86)\Brackets\Brackets.exe
rem add it for all file types
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Brackets" /t REG_SZ /v "" /d "Open with Brackets" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Brackets" /t REG_EXPAND_SZ /v "Icon" /d "%st2Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open Brackets\command" /t REG_SZ /v "" /d "%st2Path% \"%1\"" /f
rem add it for folders
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Brackets" /t REG_SZ /v "" /d "Open with Brackets" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Brackets" /t REG_EXPAND_SZ /v "Icon" /d "%st2Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Brackets\command" /t REG_SZ /v "" /d "%st2Path% \"%1\"" /f
pause
El uso de hints puede ayudarte a aumentar la velocidad de una instrucción. El hint PARALLEL no fuerza la ejecución en paralelo,
pero puede modificar el grado de parallelismo de una tabla para que ORACLE use este coste aproximado.
Si el tiempo de tardanza se produce durante la búsqueda de candidatos a borrar, entonces puedes usar los siguientes hints para ayudar a agilizar:
Para Full Table Scan
delete /*+ parallel(a,4) full(a) */
from cam_tab_meta a
where db_name like 'cam01'
Para Index Fast Full Scan
delete /*+ parallel_index(a,4) index_ffs(a) */
from cam_tab_meta a
where db_name like 'cam01'
Si el tiempo de tardanza pasa en la etapa de eliminar filas, entonces se puede utilizar DML paralelo que se encuentra desactivado por defecto, por lo que se debe primero activar dml:
Enable Parallel dml
alter session enable parallel dml;
delete /*+ parallel(a,4) full(a) */
from cam_tab_meta a
where db_name like 'cam01'
El error más común de los
analistas y programadores de software es estimar de menos. Sabemos que esto
ocurre en otras ingenierías (quién no ha oído algún amigo al que le costó el
doble de lo previsto la construcción de una casa inicialmente, quién no ha leído
de proyectos de autopistas, puentes, grandes represas, que han terminado
costando varias veces más de lo presupuestado…), pero parece ser que el caso
del software es más sencillo.
¿Sabes
conducir un coche o una moto? Alguna vez te has planteado: ¿Cuánto tiempo te
lleva ir de Madrid a Moscú (ida y vuelta)? ¿Cuánto gastarás en combustible? Si
tu jefe te dice que estés esta tarde en Moscú para una reunión: ¿Llegarás a
tiempo? Estoy completamente seguro que te preguntarás lo mismo que nos
preguntamos todos: Tipo de Transporte, Medios de Transporte, Costes, Guías,
Mapas… Y qué sucede si además tu jefe te dice que solamente dispones de una
moto para ahorrar costes! y adicionalmente sin GPS, sin mapas... Y a la
final recibes una moto de bajo cilindraje (una vespa).
Estoy
seguro que proyectos de informática en los que trabajaras, y que se plantean
este tipo de situaciones, encontrarán la misma respuesta en el momento de
estimar la construcción y puesta en marcha de un software. AL AZAR Y QUE DIOS
NOS PILLE CONFESADOS!