Schrift
[thread]11437[/thread]

Kephra: Texteditor nur in Perl (Seite 26)

Tags: Ähnliche Threads

Leser: 92


<< |< 1 ... 23 24 25 26 27 28 29 ... 54 >| >> 539 Einträge, 54 Seiten
lichtkind
 2008-11-29 16:07
#116708 #116708
User since
2004-03-22
5716 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
renee, reparier bitte den link in den perl-nachrichten , danke
mein zeug:

Es beginnt immer mit einer Entscheidung.
lichtkind
 2008-11-29 22:25
#116720 #116720
User since
2004-03-22
5716 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
renee: die neue roadmap steht: http://kephra.sourceforge.net/site/de/roadmap.shtm...
mein zeug:

Es beginnt immer mit einer Entscheidung.
lichtkind
 2008-11-29 23:43
#116723 #116723
User since
2004-03-22
5716 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
ach und noch was. der stabile 0.4 branch liegt unter

http://kephra.svn.sourceforge.net/viewvc/kephra/de...

falls jemand eine "stabile" version auschecken möchte.
mein zeug:

Es beginnt immer mit einer Entscheidung.
lichtkind
 2008-11-30 20:13
#116752 #116752
User since
2004-03-22
5716 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
schiebe grad Patch level 1 nach den fix von renee, einen crashfix von mir enthält und die vergessene halbwegs vollständige tastaturbelegung, alphanumerisch und thematisch sortiert.

bei den ersten reaktionen bekam ich auch die von einem fast blinden, mir völlig neue probleme aufzeigte, wie bm bitmapbutton die sein screenreader nicht vorlesen kann. werde auch versuchen diese probleme soweit es geht anzugehen.
mein zeug:

Es beginnt immer mit einer Entscheidung.
GwenDragon
 2008-11-30 20:26
#116753 #116753
User since
2005-01-17
14850 Artikel
Admin1
[Homepage]
user image
Ah, da schaut Lichtkind auch auf Zugänglichkeit. Ist schön, dass du dich darum kümmerst.
lichtkind
 2008-12-07 03:34
#116899 #116899
User since
2004-03-22
5716 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
PL 2 aka 0.4.0.2 (entwicklung wird sich jetzt trennen)

da war noch ein trickreicher bug für reine textdateien, aber jetzt ist Kephra UTF-sicher wie es sein sollte, klar das ich das nachträglich in die stable linie eingepflegt habe.

also alle dateien werden standartmäßig als UTF-8 geladen und gespeichert. verschiedene codierungen incl konvertierungen steht ziemlich weit oben auf der todo.
mein zeug:

Es beginnt immer mit einer Entscheidung.
renee
 2008-12-08 13:23
#116959 #116959
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Vielleicht interessiert es Dich ja...

Ich habe mir das Erstellen von neuen Dateien mit Templates etwas erleichtert:

Template.pm:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
package Kephra::Dialog::Template;

our $VERSION = 0.01;

use strict;
use warnings;

use Wx qw( 
        wxVERTICAL wxHORIZONTAL wxLEFT wxRIGHT wxTOP wxALL wxBOTTOM
        wxGROW wxEXPAND  
    wxALIGN_RIGHT
        wxSYSTEM_MENU wxCAPTION wxSTAY_ON_TOP wxNO_FULL_REPAINT_ON_RESIZE 
        wxCLOSE_BOX wxMINIMIZE_BOX  wxFRAME_NO_TASKBAR  wxBITMAP_TYPE_XPM  wxWHITE
        wxTR_NO_BUTTONS wxTR_HIDE_ROOT wxTR_SINGLE
        
);

use Wx::Event
        qw( EVT_BUTTON EVT_LISTBOX EVT_LISTBOX_DCLICK EVT_CLOSE);

my $TEMPLATE = "";

sub _ref {
        if (ref $_[0] eq 'Wx::Dialog'){ $Kephra::app{dialog}{config} = $_[0] }
        else                          { $Kephra::app{dialog}{config} }
}

sub template_dialog {
        my $frame  = Kephra::App::Window::_ref();
        my $g_l10n = $Kephra::localisation{dialog}{general};
    
    $TEMPLATE = "";
        
        # making window & main design
        my $d = Wx::Dialog->new( $frame, -1, ' Templates',
        [ 0,0 ], [ 470, 560 ],
        );

        my ($panel);
    
    my $list    = Wx::ListBox->new( $d, -1 );
    my $counter = 0;
    for my $name ( _list() ){
        $list->Append( $name );
        $list->SetClientData( $counter++, $name );
    }
    EVT_LISTBOX( $list, $list, \&onselected );
    EVT_LISTBOX_DCLICK( $list, $list, sub{ &onselected; $d->Close } );

        # button line
        $d->{apply_button} = Wx::Button->new ( $d, -1, $g_l10n->{apply} );
        $d->{cancel_button} = Wx::Button->new( $d, -1, $g_l10n->{cancel});
        EVT_BUTTON( $d, $d->{apply_button}, sub {shift->Close} );
        EVT_BUTTON( $d, $d->{cancel_button},sub {shift->Close} );
        my $button_sizer = Wx::BoxSizer->new(wxHORIZONTAL);
        $button_sizer->Add( $d->{apply_button},  0, wxRIGHT, 14 );
        $button_sizer->Add( $d->{cancel_button}, 0, wxRIGHT, 22 );


        # assembling lines
        my $d_sizer = Wx::BoxSizer->new(wxVERTICAL);
        $d_sizer->Add( $list,         1, wxEXPAND|wxALL,         14);
        $d_sizer->Add( $button_sizer, 0, wxBOTTOM|wxALIGN_RIGHT, 12);

        # release
        $d->SetSizer($d_sizer);
        $d->SetAutoLayout(1);
        $d->ShowModal;
        Wx::Window::SetFocus( $d->{cancel_button} );

        EVT_CLOSE( $d, \&quit_config_dialog );

    $TEMPLATE;
}

sub onselected {
    my ($list,$event) = @_; 
    
    my $new = "";
    unless( $event->GetInt() == -1 ) {
        $new = $event->GetString;
    }
    
    $TEMPLATE = $new;
}

sub _list {
    my @list;
    my $cfg  = $Kephra::config{file}{templates}; 
    my $file = Kephra::Config::filepath($cfg->{directory}, $cfg->{file});
    my $tmp  = Kephra::Config::File::load( $file );
    
    if (exists $tmp->{template}){
        $tmp = Kephra::Config::Tree::_convert_node_2_AoH(\$tmp->{template});
        for my $template ( @{$tmp} ) {
            push @list, $template->{name};
        }
    }

    @list;
}

sub quit_config_dialog {
        my ( $win, $event ) = @_;
        $win->Destroy;
}

1;


Änderungen in Kephra::Dialog:
Code (perl): (dl )
1
2
3
4
sub get_template {
    require Kephra::Dialog::Template;
    &Kephra::Dialog::Template::template_dialog;
}


Änderung in Kephra::File:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
sub new_from_template {
    my $template_name = Kephra::Dialog::get_template();
    
    warn $template_name;
    
    return unless $template_name;
    
    Kephra::File->new();
    
    my $cfg  = $Kephra::config{file}{templates}; 
    my $file = Kephra::Config::filepath($cfg->{directory}, $cfg->{file});
    my $tmp  = Kephra::Config::File::load( $file );
    
    if (exists $tmp->{template}){
        $tmp = Kephra::Config::Tree::_convert_node_2_AoH(\$tmp->{template});
        my $untitled = $Kephra::localisation{app}{general}{untitled};
        for my $template ( @{$tmp} ) {
            next unless $template_name eq $template->{name};
            
            my $filepath =
                Kephra::Document::get_file_path() || "<$untitled>";
            my $filename =
                Kephra::Document::file_name() || "<$untitled>";
            my $firstname =
                Kephra::Document::first_name() || "<$untitled>";
                
            my $content = $template->{content};
            $content =~ s/\[\$\$firstname\]/$firstname/g;
            $content =~ s/\[\$\$filename\]/$filename/g;
            $content =~ s/\[\$\$filepath\]/$filepath/g;
            
            Kephra::Edit::insert_text($content);
            
            last;
        }
    }
}


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
C:\Kephra_4\Kephra\config\interface>C:\Programme\Gnu\bin\diff.exe -u commands.conf.bak commands.conf
--- commands.conf.bak 2008-12-08 10:49:38.000000000 +0100
+++ commands.conf 2008-12-08 10:50:36.000000000 +0100
@@ -6,6 +6,7 @@
</app>
<file>
new = Kephra::File::new()
+ new-from-template = Kephra::File::new_from_template()
open = Kephra::File::open()
open-dir = Kephra::File::open_all_of_dir()
reload = Kephra::File::reload_current()
@@ -741,6 +742,7 @@
app-exit = alt+f4
<file>
new = ctrl+n
+ new-from-template = ctrl+shift+n
open = ctrl+o
reload = ctrl+shift+o
reload-all = ctrl+alt+o


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
C:\Kephra_4\Kephra\config\interface>C:\Programme\Gnu\bin\diff.exe -u  mainmenu.yml.bak mainmenu.yml
--- mainmenu.yml.bak 2008-12-08 10:51:10.000000000 +0100
+++ mainmenu.yml 2008-12-08 10:51:24.000000000 +0100
@@ -3,6 +3,7 @@
-
menu file:
- item file-new
+ - item file-new-from-template
-
menu file_open:
- item file-open


In den "localisation"-Dateien habe ich das auch noch eingetragen...

Ist wahrscheinlich nicht optimal, aber langsam komme ich mit der Kephra-Struktur besser zurecht...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
lichtkind
 2008-12-08 13:49
#116960 #116960
User since
2004-03-22
5716 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
sag mir bitte was zozu das genau brauchst, denn soweit ich sehe kommt dadurch keine funktionalität die nicht bereits vorhanden ist. anonst reagier ich gern auf benutzerwünsche weisst ja.



und falls du's nicht gesehen hast, hab die roadmap nochmal leicht geändert. 0.4.1 wird dazu da sein die syntax modes einzubauen, das noch ne menge cruft wegkommt, commentieren endlich sprachspezifisch wird, PERLTIDY! und vor allem das bei F5 der interpreter aufgerufen wird der auch die ganzen module kennt und nicht das lokale Kephra - perl.

mich freut auch das mit der struktur klarkommst, aber wie gesgat das ist die low level API, da wird nochmal eine kommen die es erleichtert.
mein zeug:

Es beginnt immer mit einer Entscheidung.
renee
 2008-12-08 14:00
#116962 #116962
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Meine Änderungen verkürzen den Weg zu einer neuen Datei mit Template-Text. Bisher musste man eine neue Datei erstellen, dann das Template auswählen. Mit meinen Änderungen kommt man viel schneller ans Ziel: Einfach Strg+Shift+n, Template auswählen, fertig.

Mir persönlich erleichtert das das Template-Handling ungemein...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
renee
 2008-12-08 14:03
#116963 #116963
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
lichtkind+2008-12-08 12:49:19--
und falls du's nicht gesehen hast, hab die roadmap nochmal leicht geändert.
noch nicht

Quote
0.4.1 wird dazu da sein die syntax modes einzubauen, das noch ne menge cruft wegkommt, commentieren endlich sprachspezifisch wird, PERLTIDY! und vor allem das bei F5 der interpreter aufgerufen wird der auch die ganzen module kennt und nicht das lokale Kephra - perl.
++
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< |< 1 ... 23 24 25 26 27 28 29 ... 54 >| >> 539 Einträge, 54 Seiten



View all threads created 2008-03-09 00:08.