[Pharo-users] RB - New introduced refactorings

2021-02-08 Thread Evelyn Cusi Lopez
Hello all,

These weeks I added new refactorings, following I will give some examples
of them.

*1. Create accessors with lazy initialization*

This refactoring create accessors for variables with lazy initialization,
for example:
- we have a class

Object subclass: #SomeClass
instanceVariableNames: 'stringVar'
classVariableNames: ''
package: 'Example'

- we can create accessors with lazy initialization executing this script:

(RBCreateAccessorsWithLazyInitializationForVariableRefactoring
variable: #stringVar
class: SomeClass
classVariable: false
defaultValue: '''example''') execute

the result of this refactoring is:

SomeClass >> stringVar
^ stringVar ifNil: [ stringVar := '' ]

SomeClass >> stringVar: anObject
stringVar := anObject

*2. Extract setUp refactoring* (is the first version by the moment, it need
to be improved)

This refactoring create a setUp method from a code fragment.
You can select an interval of some code in a test method and call this
refactoring to create a setUp method implementing that code and replace the
code by nothing. The selected class need to be a subclass of TestCase.

For example:

- given  a class

TestCase subclass: #SomeTest
instanceVariableNames: ''
classVariableNames: ''
package: 'Example'

SomeTest >>testFoo
 self x.
 self assert: true

SomeTest >>  self x
self doSomething

- To extract setUp method you can execute this script:

(RBExtractSetUpMethodRefactoring extract: (10 to: 16)
from: #testFoo
in: SomeTest) execute

the result of this refactoring is:

SomeTest >> setUp
super setUp.
self x.

SomeTest >> testFoo
self assert: true

*3. Move method to class side refactoring* (This refactoring is still
awaiting review)

This refactoring move a method to class side.
For example:
- given a method

ClassX >> annotatedBlockMarkup
   ^ '@@'

- we can execute the refactoring with this script:

(RBMoveMethodToClassSideRefactoring
method: (ClassX >> #annotatedBlockMarkup)
class: ClassX) execute.

the result of this refactoring is:

ClassX >> annotatedBlockMarkup
  ^ self class annotatedBlockMarkup

ClassX class >> annotatedBlockMarkup
  ^ '@@'

Any suggestions or comment of these refactorings are welcome. I hope these
new refactorings are useful to you .

Regards,
Evelyn C.


[Pharo-users] Artefact: special characters related issue

2020-05-14 Thread EVELYN CUSI LOPEZ
Hello all,

We are working with artefact, but we have a problem when using special
characters in text, since when entering text with special characters
(i.e.cçćčeéeèëêęē ) the PDF is generated in white. Below, you may find a
small example to replicate this error:
-=-=-==-=-=-==-=-=-==-=-=-==-=-=-==-=-=-== PDFDemos class >>
specialCharacterTest "PDFDemos specialCharacterTest" 

Re: [Pharo-users] (no subject)

2019-07-15 Thread EVELYN CUSI LOPEZ
Sorry, I'm working with Artefact not artifacts

El lun., 15 jul. 2019 a las 15:25, EVELYN CUSI LOPEZ ()
escribió:

> Hi all,
>
> I'm working with artifacts, but I got an error. I have a pdf's generator
> which works very well, but recently I discovered that it has problems with
> special characters, specifically this: "ć" since if some text has this
> symbol the pdf is generated in white, I tried some encodings to the text
> between them UTF8, Latin1, Latin2 and with these encodings the pdf manages
> to generate well; however the character does not look like it should look
> (It can be appear like this Ä or æ). Does anyone know how to solve this
> problem?
>
> Thanks very much,
> Evelyn
>


[Pharo-users] (no subject)

2019-07-15 Thread EVELYN CUSI LOPEZ
Hi all,

I'm working with artifacts, but I got an error. I have a pdf's generator
which works very well, but recently I discovered that it has problems with
special characters, specifically this: "ć" since if some text has this
symbol the pdf is generated in white, I tried some encodings to the text
between them UTF8, Latin1, Latin2 and with these encodings the pdf manages
to generate well; however the character does not look like it should look
(It can be appear like this Ä or æ). Does anyone know how to solve this
problem?

Thanks very much,
Evelyn


[Pharo-users] Blog Post 1 (11th - 12th May) - Evelyn Cusi

2019-05-13 Thread EVELYN CUSI LOPEZ
Blog Post for this Weekend has been uploaded to:
https://medium.com/@cusi.evelyn/better-and-more-refactorings-for-pharo-part-1-d79da98b4569


Re: [Pharo-users] GSoC 2019 Introduction myself

2019-05-13 Thread EVELYN CUSI LOPEZ
Hello, Ben

I see, I thought I could directly share the pdf from my proposal, but
apparently it is not possible. I will share the document in drive of my
proposal, which has comments enabled, in case you wish to make any
suggestion. You can access this document from the attached file:
https://docs.google.com/document/d/1YXWL9aQle9Ih66jEtoF31b9oyQAe5Ylz5y82AguyUDs/edit?usp=sharing


Thanks,
Evelyn

El sáb., 11 may. 2019 a las 2:59, Ben Coman ()
escribió:

> On Fri, 10 May 2019 at 10:33, EVELYN CUSI LOPEZ 
> wrote:
> >
> > Hello, everybody.
> >
> > My name is Evelyn, I'm 24 years old. I'm a last year student at the
> Mayor de San Simon University in Bolivia, I'm currently doing my degree
> project to get my professional degree. My proposal for "Better and more
> refactorings for Pharo" was selected in this year's GsOC :D.
> >
> > Just few months ago I got to know the world of Smalltalk and I really
> liked it, I made a page for ESUG in Seaside and I made some extensions to
> use Magritte with Material Design Lite, for now I'm doing a tutorial of
> Parasol still missing some details but soon will be ready.
> >
> > As for my proposal is to improve the current refactoring tools that
> Pharo currently has, I plan to add some shortcuts to the most important
> refactoring options, add some previews before refactoring similar to
> IntelliJ IDEA, add three new refactoring options (Inline method, variable
> inline, and find and replace) and finally improve the option to extract
> method by adding a duplicate code search of the method that will be
> extracted.
> >
> > Now I am learning everything necessary for the realization of this
> project, so any suggestion to improve the proposal or suggest the best way
> to start is welcome, and do not hesitate to ask any questions you have
> about this project :D.
> >
> > I'm very excited to start working with you.
> >
> > Sincerely,
> > Evelyn.
>
> Hi Evelyn,
>
> Welcome to Pharo.  I'm glad to hear that as a newcomer you are enjoying
> Pharo.
> I hope that your GSoC project provides you an even deeper appreciation of
> Pharo
> and starts a long and enjoyable journey working with Pharo.
>
>
> > P.d. You can access my proposal in the attached file:
> https://storage.googleapis.com/summerofcode-prod.appspot.com/gsoc/core_project/doc/5216263243038720_1554697326_Better_and_more_refactorings_for_Pharo.pdf?Expires=1557541826&GoogleAccessId=summerofcode-prod%40appspot.gserviceaccount.com&Signature=L%2BusTDTGj1rzG%2FLpjsNR82GyCzRqk6AzyqoS2Qtk2TmoaBWFIKMlWD%2FOLNKtPTFqYm0NNCPC3XF2lfaTWOozZBb%2FomPku0UCl%2FNPzuRIBcu6GIgRvaogM3J0q40yip3yG3eLBIdD%2Bb42mwJRwbXQm3z6Ite79Db%2FfdvhCJtu9nBojQ5eSE4C6h6uKDrnRumBsLnuOeArPWLigtbYY6xM%2BOmzCgo5hrICQMAsx8wBnVlG9tbddP7WnVOdzZQjHrLXZ0X0PZn91p6REG6zyUrWJGyBDlwfGiyoQzcykSKrNQkGme%2B2HqhY2DHinmC49AOJ%2FCcsoJ6qeaUrUBOUJko1GQ%3D%3D
>
> Your link doesn't work for me. I get this...
> 
> ExpiredToken
> The provided token has expired.
> 
> Request signature expired at: 2019-05-11T02:30:26+00:00
>
> cheers -ben
>
>


[Pharo-users] GSoC 2019 Introduction myself

2019-05-09 Thread EVELYN CUSI LOPEZ
Hello, everybody.

My name is Evelyn, I'm 24 years old. I'm a last year student at the Mayor
de San Simon University in Bolivia, I'm currently doing my degree project
to get my professional degree. My proposal for "Better and more
refactorings for Pharo" was selected in this year's GsOC :D.

Just few months ago I got to know the world of Smalltalk and I really liked
it, I made a page for ESUG in Seaside and I made some extensions to use
Magritte with Material Design Lite, for now I'm doing a tutorial of Parasol
still missing some details but soon will be ready.

As for my proposal is to improve the current refactoring tools that Pharo
currently has, I plan to add some shortcuts to the most important
refactoring options, add some previews before refactoring similar to
IntelliJ IDEA, add three new refactoring options (Inline method, variable
inline, and find and replace) and finally improve the option to extract
method by adding a duplicate code search of the method that will be
extracted.

Now I am learning everything necessary for the realization of this project,
so any suggestion to improve the proposal or suggest the best way to start
is welcome, and do not hesitate to ask any questions you have about this
project :D.

I'm very excited to start working with you.

Sincerely,
Evelyn.

*P.d.* You can access my proposal in the attached file:
https://storage.googleapis.com/summerofcode-prod.appspot.com/gsoc/core_project/doc/5216263243038720_1554697326_Better_and_more_refactorings_for_Pharo.pdf?Expires=1557541826&GoogleAccessId=summerofcode-prod%40appspot.gserviceaccount.com&Signature=L%2BusTDTGj1rzG%2FLpjsNR82GyCzRqk6AzyqoS2Qtk2TmoaBWFIKMlWD%2FOLNKtPTFqYm0NNCPC3XF2lfaTWOozZBb%2FomPku0UCl%2FNPzuRIBcu6GIgRvaogM3J0q40yip3yG3eLBIdD%2Bb42mwJRwbXQm3z6Ite79Db%2FfdvhCJtu9nBojQ5eSE4C6h6uKDrnRumBsLnuOeArPWLigtbYY6xM%2BOmzCgo5hrICQMAsx8wBnVlG9tbddP7WnVOdzZQjHrLXZ0X0PZn91p6REG6zyUrWJGyBDlwfGiyoQzcykSKrNQkGme%2B2HqhY2DHinmC49AOJ%2FCcsoJ6qeaUrUBOUJko1GQ%3D%3D